Code Monkey home page Code Monkey logo

Comments (41)

912807862 avatar 912807862 commented on May 30, 2024

image
image
image

from 3dtiles.

fanvanzh avatar fanvanzh commented on May 30, 2024

感谢你的反馈

from 3dtiles.

fanvanzh avatar fanvanzh commented on May 30, 2024

fixed now.

from 3dtiles.

zxr12748 avatar zxr12748 commented on May 30, 2024

我抓的最新版本,转换的数据仍然出现了类似问题

from 3dtiles.

fanvanzh avatar fanvanzh commented on May 30, 2024

是否可提供测试数据?

from 3dtiles.

zxr12748 avatar zxr12748 commented on May 30, 2024

测试数据

这是其中一个测试数据,我用您的这个3dtiles和cesiumlab都转过,显示都有问题

from 3dtiles.

fanvanzh avatar fanvanzh commented on May 30, 2024

image
转换的没有问题。

和 osgviewer 看到的一样,空洞应该是数据本身的。

from 3dtiles.

912807862 avatar 912807862 commented on May 30, 2024

感谢您的回答 我重新用原来的OSGB 到另外一个软件中转换 是没有问题的 还有 请教一个一个问题 我也是刚研究b3dm 你是不是解析OSGB 然后转换成GLTF GLTF+头文件组合成B3DM 格式 然后用json来组织B3DM的吗?

from 3dtiles.

fanvanzh avatar fanvanzh commented on May 30, 2024

是的,详见 osgb23dtile.cpp。

from 3dtiles.

912807862 avatar 912807862 commented on May 30, 2024

感谢

from 3dtiles.

912807862 avatar 912807862 commented on May 30, 2024

还有一个问题 就是shp 格式 转换貌似有问题 不能加载

from 3dtiles.

fanvanzh avatar fanvanzh commented on May 30, 2024

网友测试能加载,你看看以前的 issue。
目前只处理了 面数据,(84 坐标系)

from 3dtiles.

zxr12748 avatar zxr12748 commented on May 30, 2024

@fanvanzh 您方便的话能把转后的数据上传么?我这看到的结果和您发的截图不一样

from 3dtiles.

912807862 avatar 912807862 commented on May 30, 2024

@fanvanzh 我当时测试的数据有100多MB 估计是量太大了 小数据问题不大

from 3dtiles.

fanvanzh avatar fanvanzh commented on May 30, 2024

@912807862 100M 不算大数据。我们测试都是100G左右

from 3dtiles.

fanvanzh avatar fanvanzh commented on May 30, 2024

@zxr12748 不方便传出。

from 3dtiles.

simonasdmd avatar simonasdmd commented on May 30, 2024

这个我看里面有gdal的东西 应该是支持转换投影坐标系的吧,但是入参并没有类似的选项,如果想把osbg转换成对应WGS84或者别的坐标系的tiles文件,应该怎么做呢?

from 3dtiles.

fanvanzh avatar fanvanzh commented on May 30, 2024

默认读取 metadata.xml 里坐标,如果不是 WGS84 会自动转 WGS84;

from 3dtiles.

simonasdmd avatar simonasdmd commented on May 30, 2024

那如果想转成别的坐标系呢?比如北京54坐标系或者别的通用的,这个可以怎么搞?求教下

from 3dtiles.

fanvanzh avatar fanvanzh commented on May 30, 2024

cesium 不支持其他坐标系,放到球上的坐标一定是 wgs84

from 3dtiles.

simonasdmd avatar simonasdmd commented on May 30, 2024

我看了下cesium,它支持很多坐标系啊,你说的支持吃wgs84是针对3dtiles吗?,如果我想转换成别的坐标系,可以再这个工程的那个部分加呢?比如这个是先把osgb转换成gltf,这个过程中可以吗?

from 3dtiles.

simonasdmd avatar simonasdmd commented on May 30, 2024

比如转成3857 还是就算传入的是3857 cesium也会自己转换成wgs84的加载

from 3dtiles.

fanvanzh avatar fanvanzh commented on May 30, 2024

不会,cesium 不会做投影转换的问题,只能用4326 的坐标系。

from 3dtiles.

simonasdmd avatar simonasdmd commented on May 30, 2024

image
想问下这个extern "C" bool epsg_convert(int insrs, double* val, char* path)就是转换成wgs84的函数么?如果是的话,我找不到它的调用点,这个是怎么工作的呢?

from 3dtiles.

fanvanzh avatar fanvanzh commented on May 30, 2024

这个是在 rust 里调用的。
详见 main.rs

from 3dtiles.

simonasdmd avatar simonasdmd commented on May 30, 2024

好的,之前没有接触过rust,能不能额外问下这个大部分都是用c++写的,为什么不全部用c++,用部分rust的原因是什么啊?

from 3dtiles.

912807862 avatar 912807862 commented on May 30, 2024

@simonasdmd 3DTiles 转换完后自己加入自己的坐标系就行了 跟目录下的 矩阵 就是调整模型的 位置以及方位 transform 这个字段就行了

from 3dtiles.

simonasdmd avatar simonasdmd commented on May 30, 2024

@912807862 你好,问下你说的这个transform 应该怎么改呢?我在生成3dtiles之后,和data同级目录tileset.json这个文件里 看到了transform字段, "transform": [
-0.9200762383166308,
-0.39173934661343207,
0.0,
0.0,
0.14998421515811922,
-0.3522671737790223,
0.923803319695888,
0.0,
-0.3615319161445652,
0.8491281979033392,
0.3850661983792745,
0.0,
-2307045.3800931596,
5418545.91143869,
2440775.2135206545,
1.0
]这个应该怎么调整呢,还有就是我生成的3dtiles数据加载出来以后大小有些问题
image

from 3dtiles.

fanvanzh avatar fanvanzh commented on May 30, 2024

@simonasdmd 业余爱好,多学一门语言而已。 还有个 branch 是 C#、 C++ 混写的。

from 3dtiles.

simonasdmd avatar simonasdmd commented on May 30, 2024

@fanvanzh 我转换成3dtiles之后,加载出来发现位置有偏移,这个可以再哪里调呢?前面有人回复说transform字段可以,但是网上没有找到关于这个的说明,能说一下怎么调整位置吗?ps:经纬度和高度都有偏移

from 3dtiles.

fanvanzh avatar fanvanzh commented on May 30, 2024

@simonasdmd 参照我项目里的 matrix.xls ,是个根据经纬度计算 matrix 的 excel 公示

from 3dtiles.

simonasdmd avatar simonasdmd commented on May 30, 2024

@fanvanzh 这个需要怎么使用呢?网上搜了下例子(https://www.cnblogs.com/huqi-code/p/8288239.html),但是并没有能解决问题,求问下这个应该怎么使用,或者这个工程里面可以调吗?

from 3dtiles.

912807862 avatar 912807862 commented on May 30, 2024

@simonasdmd tileset.json transform字段 在cesium里面有transform这个类 可以根据经纬度角度生成M4矩阵 然后在json里面替换掉就行了 这个是最简单的方法

from 3dtiles.

912807862 avatar 912807862 commented on May 30, 2024

@simonasdmd
image
这个就是n你当前的笛卡尔坐标 也就是 cesium里面的c3 你按照你的坐标 和角度 通过transform这个类去换算 或者按照fanvanzh 说的 他的matrix的算法 都是可以的

from 3dtiles.

912807862 avatar 912807862 commented on May 30, 2024

@fanvanzh 问下你 我现在也可以自己生产B3DM数据了 我吧shp转换成火柴盒3DTILES 思路是 矢量数据->obj->gltf->glb->b3dm 这个已经实现了 但是觉得很麻烦 一开始就是想 矢量->gltf->glb->b3dm 我想问下你是什么思路做的? 我是用java实现的 C++ 没太看明白

from 3dtiles.

912807862 avatar 912807862 commented on May 30, 2024

@fanvanzh 同理OSGB 应该也能到obj 后续需要实现osgb的转换

from 3dtiles.

simonasdmd avatar simonasdmd commented on May 30, 2024

@912807862 意思我大概明白了,那个martrix的算法,我填了我想要的数据,然后下面对应生成了四列,
image,想问是不是四个x,四个y,四个z,四个r分别一组,还有就是入参哪里,后面三个参数有点不懂具体的含义。
image

from 3dtiles.

912807862 avatar 912807862 commented on May 30, 2024

image
这三个 貌似不对 应该是笛卡尔坐标

from 3dtiles.

912807862 avatar 912807862 commented on May 30, 2024

@simonasdmd 你直接用cesium的类去计算 这样不会有问题 我已经验证过了

from 3dtiles.

simonasdmd avatar simonasdmd commented on May 30, 2024

@912807862 我手动用matrix改了数据,然后按照四个一组,贴地和位置都已经搞好了,看你前面说你自己写过obj->gltf的工具,这个能不能发我一份作为参考,我想用c写一份,但是网上都是cesium的现成工具,看不懂js的代码。

from 3dtiles.

simonasdmd avatar simonasdmd commented on May 30, 2024

@fanvanzh 能不能问下这个转换的过程是什么 我现在想写一个obj转换成gltf 和obj转换成3dtiles的工具,这个可以从这个工程里面借鉴吗?网上都是js的,看不懂,,,

from 3dtiles.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.