首页 > 编程语言 >一个python代码

一个python代码

时间:2024-07-18 16:07:59浏览次数:16  
标签:python resolution 代码 filename 一个 np print data jgw

 

一个python代码

import os
import numpy as np
import re
from pathlib import Path
output_folder='./data'
filename_lineEdge = r'./data/fx0022/dom1lines_Edge.txt'
filename_jgw = r'./data/fx0022/test/dom1.jgw'
#读取线段文件
data = []
i = 0
with open(filename_lineEdge, 'r') as f:
    lines = f.readlines()
    for item in lines:
        #print(item.strip())
        out = re.sub(r"\s{2,}", " ", item).strip()
        #print(out)
        res = out.split(" ")
        if i == 0:
            data = np.expand_dims(res, axis=0)
            i = i + 1
        else:
            data = np.concatenate((data, np.expand_dims(res, axis=0)), axis=0)

data = np.array(data).astype(np.float64)
print(data.shape)
#读取jgw文件
if os.path.isfile(filename_jgw):
    with open(filename_jgw, 'r') as fjpw:
        lines_jgw = fjpw.readlines()
    resolution = float(lines_jgw[0])
    topleftX = float(lines_jgw[4])
    topleftY = float( lines_jgw[5])
else:
    resolution = 1.0
    topleftX = 0
    topleftY = 0
print(resolution)
print(topleftX)
print(topleftY)

#坐标变换
f_newEdge= output_folder+'/{}{}'.format(str(Path(filename_lineEdge).stem),'_edge.txt')
with open(f_newEdge,'w' ) as newlineEdgeFile:
    for element in data:
        print(element)
        fromX=topleftX+element[2]*resolution
        fromY=topleftY-element[0]*resolution
        toX=topleftX+element[3]*resolution
        toY=topleftY-element[1]*resolution
        new_Line=[fromX, fromY, toX, toY]
        print('转换后{}'.format(new_Line))
        newlineEdgeFile.writelines('{} {} {} {}\n'.format(fromY,toY,fromX,toX))

 

标签:python,resolution,代码,filename,一个,np,print,data,jgw
From: https://www.cnblogs.com/yhlx125/p/18309774

相关文章

  • 代码随想录算法训练营第42期 第二天 | LeetCode977. 有序数组的平方、209. 长度最小的
    一、977.有序数组的平方学习链接:有序数组的平方状态:暴力解法与双指针都做出来了时间复杂度:暴力解法O()    双指针解法 O()细节之处:暴力解法1       双指针解法1  暴力解法classSolution{publicint[]sortedSquares(int[]nums){......
  • 「代码随想录算法训练营」第十四天 | 二叉树 part4
    513.找树左下角的值题目链接:https://leetcode.cn/problems/find-bottom-left-tree-value/题目难度:中等文章讲解:https://programmercarl.com/0513.找树左下角的值.html视频讲解:https://www.bilibili.com/video/BV1424y1Z7pn题目状态:有点思路,但未通过,最后在ChatGPT的帮助下理......
  • 基于SpringBoot的宠物领养系统-07863(免费领源码+开发文档)可做计算机毕业设计JAVA、PHP
    摘 要21世纪的今天,随着社会的不断发展与进步,人们对于信息科学化的认识,已由低层次向高层次发展,由原来的感性认识向理性认识提高,管理工作的重要性已逐渐被人们所认识,科学化的管理,使信息存储达到准确、快速、完善,并能提高工作管理效率,促进其发展。论文主要是对宠物领养系统......
  • 多张图片合并成一个PDF文件有免费方法吗?
    大家在日常办公中也会经常使用图片文件,但是为了方便打印,我们一般都会选择将其转换成PDF格式。如何图片转pdf免费呢?下面我们就来分享3种转换方法,帮你解决转换难题!方法一:使用在线转换器ilovepdf中文在线工具是一款专门用来处理各种日常办公的PDF、office、图片等格式文档的工具,同......
  • 代码随想录算法训练营第27天 | 回溯3:93.复原IP地址、78.子集、90.子集II
    代码随想录算法训练营第27天|回溯3:93.复原IP地址、78.子集、90.子集II93.复原IP地址https://leetcode.cn/problems/restore-ip-addresses/submissions/547344868/代码随想录https://programmercarl.com/0093.复原IP地址.html#算法公开课78.子集https://leetcode.cn/probl......
  • ubuntu 20 pyenv安装python环境
    安装pyenvgitclonehttps://github.com/pyenv/pyenv.git~/.pyenv或者自动安装程序curlhttps://pyenv.run|bash依赖库sudoapt-getupdatesudoapt-getupgradesudoapt-getinstallgccmakezlib1g-devdist-upgradesudoapt-getinstalllibbz2-devbuild-essenti......
  • 代码随想录算法训练营第16天|LeetCode112路径总和LeetCode113路径总和iiLeetCode106.
    代码随想录算法训练营Day16代码随想录算法训练营第16天|LeetCode112路径总和LeetCode113路径总和iiLeetCode106.从中序与后序遍历序列构造二叉树LeetCode105.从前序与中序遍历序列构造二叉树目录代码随想录算法训练营前言LeetCode112路径总和,LeetCode113路径......
  • python中的 == 和 is
    在Python中,==和is都是用于比较两个值的运算符,但它们的用途和含义不同。理解它们之间的区别对于编写正确的代码非常重要。==运算符==运算符用于比较两个对象的值是否相等。它检查对象的内容是否相同,而不关心它们是否是同一个对象。a=[1,2,3]b=[1,2,3]print(a......
  • 代码随想录算法训练营第 15 天 |LeetCode110平衡二叉树 LeetCode257二叉树的所有路径
    代码随想录算法训练营Day15代码随想录算法训练营第15天|LeetCode110平衡二叉树LeetCode257二叉树的所有路径LeetCode404左叶子之和LeetCode222完全二叉树节点之和目录代码随想录算法训练营前言LeetCode110平衡二叉树LeetCode257二叉树的所有路径LeetCode404左......
  • 3.2-LSTM的代码实现
    文章目录1LSTM结构整理2LSTM的代码实现2.1初始化和前向传播2.2反向传播3TimeLSTM层的实现3.1TimeLSTM层的结构3.2TimeLSTM层的代码实现3.2.1初始化3.2.2前向传播3.2.3反向传播4使用LSTM对语言模型建模4.1初始化4.2前向计算4.3反向传播4.4其他5在PTB数据集上......