首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏地球程序员的自我修养

    SqliteSpatialite Geometry格式(不是WKB)

    网上以讹传讹的说法比较多,大多说称Spatialite Geometry为标准WKB格式,实际上按照官方文档解释并非如此 SpatiaLite internally stores geometry values using ordinary SQLite's BLOB columns in a format that is very closely related to WKB format but not 112,90,64,83,-57,-24,13,-10,97,92,64,41,61,2,-29,60,97,65,64,112,-47,63,0,107,-111,90,64,-2 对比二进制内容 分析WKB 111,90,64 LAST(最后一位,固定值) -2 结论 如果不想或者无法使用spatialite插件,直接截取sql3 Blob字节数组的[39- 倒数第二位],首位增加byteOrder,即为标准WKB 输出jts geometery 参考文档 SpatiaLite internal BLOB-Geometry format (gaia-gis.it): Well-Known Binary (WKB

    1.1K20编辑于 2022-11-29
  • 来自专栏方亮

    0基础学习Mybatis系列数据库操作框架——Mysql的Geometry数据处理之WKB方案

    而本文介绍的WKB方法,则可以解决上述问题。 WKB全程Well-Known Binary,它是一种二进制存储几何信息的方法。 WKB type表示几何类型。 虽然这个结构已经很基础,但是**Mysql的Geometry结构并不是WKB。准确的说,WKB只是Mysql的Geometry结构中的一部分。 所以WKB的Byte order字段值一定是1。 有了这些知识,我们就可以定义WKB类型的TypeHandler了。 然后申请比WKB大4个字节的空间,分别填入SRID和WKB。这样整个内存结构就匹配Mysql内部的Geometry内存结构了。

    53600编辑于 2024-05-24
  • 来自专栏云计算与大数据技术

    SparkSQL使用UDF函数代替MySQL空间函数读取MySQL空间字段

    than five bytes") //first four bytes of the geometry are the SRID, //followed by the actual WKB wkbReader = new WKBReader //copy the byte array, removing the first four //SRID bytes val wkb = new Array[Byte](geometryAsBytes.length - 4) System.arraycopy(geometryAsBytes, 4, wkb, 0, wkb.length ) dbGeometry = wkbReader.read(wkb) dbGeometry.setSRID(srid) dbGeometry } Java版 public = new byte[geometryAsBytes.length - 4]; System.arraycopy(geometryAsBytes, 4, wkb, 0, wkb.length

    2.4K10编辑于 2021-12-07
  • 来自专栏云计算与大数据技术

    SparkSQL使用UDF函数代替MySQL空间函数读取MySQL空间字段

    five bytes") //first four bytes of the geometry are the SRID, //followed by the actual WKB { srid += (sridBytes(i) & 0xff) << (8 * i) } //use the JTS WKBReader for WKB = new Array[Byte](geometryAsBytes.length - 4) System.arraycopy(geometryAsBytes, 4, wkb, 0, wkb.length ) dbGeometry = wkbReader.read(wkb) dbGeometry.setSRID(srid) dbGeometry = new byte[geometryAsBytes.length - 4]; System.arraycopy(geometryAsBytes, 4, wkb, 0, wkb.length

    2.7K00发布于 2021-05-21
  • 来自专栏从ORACLE起航,领略精彩的IT技术。

    Linux的IO性能监控

    2015年02月25日 _x86_64_ (64 CPU) Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 123.14 0.42 1.53 1.55 41.99 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 59.23 13.14 10.14 0.76 100.10 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 135.03 80.47 64.34 1.05 100.00 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 122.44 143.71 119.34 0.85 100.00 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB

    1.3K20发布于 2019-05-24
  • 来自专栏但老师的数据分析

    导入文本(txt文件)的VBA代码

    你们的但老师最近太忙啦,只能发一些做过的小工具给你们玩玩啦 Sub Dan() Dim fileName$ Dim Wkb As Workbook Dim Arr, iRow Excel 文件 (*.txt),*.txt") If fileName = "" Then Exit Sub Application.ScreenUpdating = 0 Set Wkb = Workbooks.Open(fileName) With Wkb.Sheets(1) iRow = .Cells(.Rows.Count, 1).End(3).Row Application.Transpose(ArrTmp) End If .Cells(1, 1).EntireRow.Delete End With Wkb.Close 0 Application.ScreenUpdating = 1 Set Wkb = Nothing End Sub 代码用法格式要求 1 txt文本文件 2 文本文件中的数据以逗号

    2.8K10编辑于 2022-03-22
  • 来自专栏Excel催化剂

    Excel催化剂开源第16波-VSTO开发之脱离传统COM交互以提升性能

    using (ExcelPackage package = new ExcelPackage(fileInfo)) { ExcelWorkbook wkb = package.Workbook; //先删除结果表 if (wkb.Worksheets.Any(s => s.Name == newShtName )) { wkb.Worksheets.Delete(wkb.Worksheets[newShtName]); styleScope == StyleActivateScope.StyleWkb) { foreach (var sht in wkb.Worksheets else if (styleScope == StyleActivateScope.StyleSht) { var sht = wkb.Worksheets

    1.4K30发布于 2021-08-19
  • 来自专栏全栈程序员必看

    linux中iostat命令_linux运维和网络运维

    wkB/s: 每秒写K字节数。是 wsect/s 的一半。 avgrq-sz: 平均每次设备I/O操作的数据大小 (扇区)。 # iostat -xdk 1 10 | egrep "sda|Device" Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 70.30 0.43 32.87 8.64 11.17 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 1024.00 7.27 327.76 39.40 98.50 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 1024.00 7.24 322.26 51.79 98.40 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB

    12.1K30编辑于 2022-11-08
  • 来自专栏计算机视觉理论及其实现

    python Shapely使用指南详解

    line2.coords[:][(0.0, 0.0), (0.0, 1.0), (1.0, 2.0)]常见格式转换>>> Point(1,1).wkt'POINT (1 1)'>>> Point(1,1).wkb >>> Point(1,1).wkb.encode('hex')'0101000000000000000000f03f000000000000f03f'>>>>>> Point(1,1).wkb.encode 下面是微信乞讨码:对于wkb>>> from shapely.wkb import dumps, loads>>> s = dumps(Point(1,2), hex=True)>>> s'0101000000000000000000F03F0000000000000040

    2.1K00编辑于 2022-09-02
  • 来自专栏Excel催化剂

    Excel催化剂开源第18波-工作表、工作薄保护破解

    { if (Common.IsContineToRunQuery()) { Excel.Workbook wkb = Common.ExcelApp.ActiveWorkbook; string actShtName = wkb.ActiveSheet.Name; string wkbOpenPwd = string.Empty; string wkbFullPath = wkb.FullName; if (Path.GetExtension(wkbFullPath).ToLower() == ".xls" || wkb.HasPassword)//当是xls时,转换成xlsx或xlsm { if (wkb.HasVBProject) { wkbFullPath

    1.5K50发布于 2021-08-19
  • 来自专栏summerking的专栏

    iostat查看硬盘读写速度

    /15/2021 _aarch64_ (64 CPU) Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 9.07 0.23 13.09 1.39 0.03 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 0.00 0.00 0.00 0.00 0.00 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 3.68 0.00 3.68 1.20 3.00 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB rKB/s:The number of read requests that were issued to the device per second; wKB/s:The number of write

    3.9K30编辑于 2022-09-16
  • 来自专栏技术博文

    一天一个 Linux 命令(42):iostat 命令

    0.00 0.28 0.03 0.00 99.41 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 0.00 0.25 0.13 0.00 98.87 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 0.00 0.50 0.00 0.00 97.50 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 0.00 0.25 0.00 0.00 99.62 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB (需要计算) wkB/s: 每秒写K字节数.是 wsect/s 的一半.

    1.8K20发布于 2021-11-29
  • 来自专栏Excel催化剂

    『代码实现版续篇』彻底攻克Excel打印或转PDF信息丢失问题,附上攻克全过程

    btnConvertLinkPicSht_Click(object sender, RibbonControlEventArgs e) { try { var wkb File.Exists(wkb.FullName)) { UIMessageTip.ShowError("请先保存本工作薄后再操作。" var tmpWkbFilePath = Path.Combine(Path.GetTempPath(), Path.GetFileNameWithoutExtension(wkb.FullName )+"_链接图片版"+Path.GetExtension(wkb.FullName)); wkb.SaveCopyAs(tmpWkbFilePath);

    31110编辑于 2024-11-23
  • 来自专栏PHP修行之路

    io排查工具 iostat/iotop/vmstat

    0.01    0.00    0.00    0.04    0.00   99.95 Device:         rrqm/s   wrqm/s   r/s   w/s    rkB/s    wkB Device:         rrqm/s   wrqm/s   r/s   w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util 8.47    21.18     0.03   39.95   5.98   0.49 Device:         rrqm/s   wrqm/s   r/s   w/s    rkB/s    wkB 0.00     0.00     0.00    0.00   0.00   0.00 Device:         rrqm/s   wrqm/s   r/s   w/s    rkB/s    wkB per second 没面发出的写入请求的数量 rkB/s: The number of kilobytes read from the device per second 以千字节每秒从设备读取数 wkB

    90720编辑于 2023-05-01
  • 来自专栏Excel催化剂

    Excel催化剂开源第51波-Excel催化剂遍历单元格操作性能保障

    var package = new ExcelPackage(new FileInfo(filePath))) { ExcelWorkbook wkb = package.Workbook; foreach (var itemSht in wkb.Worksheets) { if (isActWkb) { AddDataToResultSht(resultTable, wkb package.Save(); }// if (isActWkb) }//foreach (var itemSht in wkb.Worksheets

    1.2K20发布于 2021-08-19
  • 来自专栏云计算与大数据技术

    MySQL空间函数汇总

    Point值构造MultiPoint 13 MultiPolygon() 从Polygon值构造MultiPolygon 14 ST_GeomFromWKB(), ST_GeometryFromWKB() 从WKB () 从WKB构造LineString 17 ST_MLineFromWKB(), ST_MultiLineStringFromWKB() 从WKB构造MultiLineString 18 ST_MPointFromWKB (), ST_MultiPointFromWKB() 从WKB构造MultiPoint 19 ST_MPolyFromWKB(), ST_MultiPolygonFromWKB() 从WKB构造MultiPolygon 20 ST_PointFromWKB() 从WKB构造点 21 ST_PolyFromWKB(), ST_PolygonFromWKB() 从WKB构造多边形 22 ST_GeomFromText() ST_GeometryN() 从几何集合中返回第N个几何 33 ST_AsGeoJSON() 从几何体生成GeoJSON对象 34 ST_AsBinary(), ST_AsWKB() 从内部几何格式转换为WKB

    3K20编辑于 2022-01-05
  • 来自专栏全栈程序员必看

    Python读取excel文件数据并插入数据库[通俗易懂]

    pip install xlrd 对excel文件中的数据进行读取 import xlrd FilePath = 'E:/PDBC/StudentInfo.xls' # 1.打开excel文件 wkb = xlrd.open_workbook(FilePath) # 2.获取sheet sheet = wkb.sheet_by_index(0) # 获取第一个sheet表['学生信息'] # 3. 方法获取操作游标 c = conn.cursor() """ 二、读取excel文件 """ FilePath = 'E:/PDBC/StudentInfo.xls' # 1.打开excel文件 wkb = xlrd.open_workbook(FilePath) # 2.获取sheet sheet = wkb.sheet_by_index(0) # 获取第一个sheet表['学生信息'] # 3.

    1.8K10编辑于 2022-09-27
  • 来自专栏Python大数据分析

    geopandas 0.9.0重要新特性一览

    直接读取时需要传入特殊格式的zip路径表达式(详见我以前撰写的geopandas系列教程「文件IO篇」),但在0.9.0版本中,当你的zip压缩包内只有单一图层的文件时,直接就可读取: 图2 2.2 新增对wkt与wkb 格式的直接支持 在以前版本的geopandas中,是没有直接的API来与wkt/wkb格式进行交互的,往往需要配合shapely中的相关功能。 而在这次的更新中针对GeoSeries对象新增了from_wkt()、from_wkb()、to_wkt()以及to_wkb()四种方法,使得我们直接就可以轻松完成格式转换: 图3 2.3 新增高度z

    1.1K20编辑于 2022-04-03
  • 来自专栏数据科学学习手札

    (数据科学学习手札111)geopandas 0.9.0重要新特性一览

    图2 2.2 新增对wkt与wkb格式的直接支持   在以前版本的geopandas中,是没有直接的API来与wkt/wkb格式进行交互的,往往需要配合shapely中的相关功能。    而在这次的更新中针对GeoSeries对象新增了from_wkt()、from_wkb()、to_wkt()以及to_wkb()四种方法,使得我们直接就可以轻松完成格式转换: ?

    1.1K20发布于 2021-03-15
  • 来自专栏DBA随笔

    vmstat命令和iostat命令

    /17/2022 _x86_64_ (40 CPU) Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 0.01 0.28 0.01 0.01 3.03 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 1.90 0.21 2.12 1.43 98.80 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB 1.71 0.20 2.04 1.02 99.50 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB rkB/s和wkB/s: 意为每秒读写的kB字节数。 avgrq-sz和avgqu-sz: 分别代表请求的扇区数和在设备队列中等待的请求数。通常这俩值越小越好。

    95430编辑于 2022-07-27
领券