首页 > 其他分享 >读取超图数据文件中的图元数量并输出

读取超图数据文件中的图元数量并输出

时间:2023-11-21 14:58:40浏览次数:37  
标签:多边形 数据文件 res echo 超图 str array 图元

时不时有统计数据量的需求,本来都是挨个打开数来着,后来发现,其实就是sqlite 3的数据库,干脆写个脚本得了。

 

<?php
// 本代码用于对超图数据文件中各个数据集的数量和类型进行统计
// udb/udd格式中udd是数据文件,udbx直接是数据文件,应该选择这两类文件作为参数,附加到代码命令后
// 获取文件参数
$str =$argv[1];
// 初始化图元类型常数
$typeName=array(
    1=>"点",
    3=>"线",
    5=>"面"
);
// 基本图层的排序归类
function getOrder($name){

    $nameOrder=array("省名点", "地级市", "县级市", "区县", "乡镇", "村", "市界", "区县界线", "高速公路", "都市高速路", "国道", "省道", "县道", "乡镇道路", "行人道路", "九级路", "其他道路", "地铁", "轮渡", "铁路", "水系(线)", "水系多边形", "岛屿(多边形)", "植被(多边形)", "功能面(多边形)", "餐饮", "批发零售", "金融保险", "运动休闲", "科技及技术服务", "兴趣区", "知名区域", "大城市区域", "商业设施及服务", "汽车销售及服务", "教育文化", "居民服务", "卫生社保", "农林牧渔业", "公用设施", "公司企业", "住宿", "交通运输仓储");
    $res=array_search($name,$nameOrder,true);
    return is_bool($res)?-1:$res;   
}
// 回显输入的文件名路径
echo "你输入的数据文件名称是:$str\n";
// 判断文件是否存在
if(!file_exists($str ))die("文件不存在");
// 打开sqlite数据库
$handle = new SQLite3($str);
// 从数据描述数据库中选择数据
$sqlstr="select SmDatasetID,SmDatasetName,SmDatasetType,SmObjectCount from SmRegister order by SmDatasetType,SmDatasetID";
$result = $handle->query($sqlstr);
// 打印表头
echo "序号\t排序\t名称\t类型\t数量\n";
// 自增变量
$i=1;
$row=array();
// 遍历数据并打印
while($res = $result->fetchArray()){
    echo($i."\t".getOrder($res[1])."\t".$res[1]."\t".$typeName[$res[2]]."\t".$res[3]."\n");
    $i++;
    $row[]=array($res[1],$typeName[$res[2]],$res[3]);
} 

 

标签:多边形,数据文件,res,echo,超图,str,array,图元
From: https://www.cnblogs.com/qinshoublog/p/17846556.html

相关文章

  • CAD中查看图元属性、绘制region、绘制block、绘制xc
    一、选中图元,编辑,查看属性 二、面域命令:region选定一个封闭图形,回车 三、块的新建及编辑命令:block选定一个封闭图形,命名,确定 四、XC前提:对块进行操作命令:xclip......
  • 计算机图形:图元、片元、光栅化等基本概念
    几种“点”的概念顶点(vertex):图元(如线段、三角形、圆等几何图形)由顶点+边组成,由用户及其建立的模型确定.图元(primitive):描述对象的几何要素的输出图元,称为几何图元,简称图元.如点、直线段、圆、二次曲线、曲面等.片元(fragment):光栅化过程的产物,光栅化将一个图元转变成二维图......
  • SuperMap-WebGL-S3MTilesLayer(图元操作)
    S3MTilesLayer,S3M(Spatial3DModel)图层类,通过该图层实现加载三维切片缓存,包括倾斜摄影模型、BIM模型、点云数据、精细模型、矢量数据、符号等。那S3MTilesLayer中针对图元的操作主要有'颜色','偏移','可见性'等,可通过下面这张表格,查看对应的方法,文章接下来就从这3个操作来进行说......
  • matlab中读取txt数据文件(txt文本文档)
    根据txt文档不同种类介绍不同的读取数据方法一、纯数据文件(没有字母和中文,纯数字)对于这种txt文档,从matalb中读取就简单多了例如test.txt文件,内容为17.901-1.111133.04517.891-1.128633.04517.884-1.134533.045可以在commandwindow中输入loadtest.txt,然后就会产生一......
  • Json数据文件处理中遇到的一些问题总结(C++)
    一、海量数据处理的方法总结参考CSDN技术贴:海量数据处理方法C++面试必备-海量数据处理二、快速Json文件解析的库字节-json快速解析库三、无锁队列C++无锁队列四、C++打包静态库静态库和动态库Linux-(C/C++)生成并使用静态库/动态库c/c++依赖静态库、动态库符号问题在远......
  • 第九章:几何图元
    第九章:几何图元几何图元,就是构成几何物体的最小单元。这章节我们将对它们进行讨论。1.表示技术如何用数学的方式来描绘物体?是的,用函数。我们可以用一个布尔函数\(f(x,y,z)\)以隐含形式进行描绘,当传入空间中的一点的坐标时,只有当这点属于那个物体时才会返回真;还有一种叫描述方......
  • pyspark.sql处理多分隔符数据文件生成DF案例
    pyspark程序清洗多分隔符数据案例原始数据可以看到原始数据是以“|#$”多分隔符进行数据分割的POD9_6ec8794bd3297048d6ef7b6dff7b8be1|#$2023-10-24|#$0833|#$#|#$#|#$99999999999|#$#|#$12345678912POD9_352858578708f144bb166a77bad743f4|#$2023-10-24|#$0391|#$#|#$#|#$99......
  • 核心数据文件外发审批策略,有必要进行执行吗?
    企业在日常运营中,有很多重要的核心数据,比如研发代码,都是保存在员工电脑上。可想而知,如果这些代码被有意或者无意泄露出去,将对企业的持续运行造成比较大的经济和声誉上的损失,甚至是面临更为严重的监管处罚。根据RSA的一项研究显示,大多数企业都没有严格的文件外发制度,有一半以上的......
  • [转]Oracle数据文件损坏的模拟和修复(一) |ORA-01578 data block corrupted|
    造成数据块损坏的原因通常是由于开启了异步I/O或者增加了写进程,还有可能是硬件引起的,今天模拟一下该问题的发生及修复方法。由于水平有限,那面疏漏,欢迎大家指正。 创建测试环境建立测试表空间:123456create tablespacetestdatafile  '/u02/oradata/logdw......
  • 计算机图形:输出图元
    目录图元概念坐标系统屏幕坐标OpenGL中指定2D坐标系统OpenGL画点函数OpenGL画线填充区图元多边形填充区多边形分类识别凹多边形分割凹多边形将凸多边形分割成三角形集多边形的内-外测试多边形表平面方程前向面与后向面OpenGL多边形填充区函数OpenGL顶点数组像素阵列图元位图图像字......