首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何快速(易于编写脚本)预览3D矢量/线条?

如何快速(易于编写脚本)预览3D矢量/线条?
EN

Stack Overflow用户
提问于 2009-08-28 07:08:40
回答 4查看 478关注 0票数 2

我正忙着从一个工具中读取3D构建模型,从而生成了一组Line(p1, p2)对象,每个对象都由两个Point(x, y, z)对象组成。我想在一个简单的3D查看器中显示这些东西,有点像SVG (据我理解,它只支持2D)。

读取是用Python完成的,特别是IronPython。我可以使用一个.NET查看器库,也可以通过在适当的程序中手动打开结果来编写一个文本/xml/之类的文件,其中包含要显示的数据。

您会使用什么格式/工具来查看数据?

(目前,这只是为了调试目的,所以它不一定是一流的。只要一根钢丝绳就行了!)

我确实查过数学图片库,但那似乎只是绘图函数.

编辑:,我最终走了X3D路线,写了一个关于如何做到这一点的小博客文章。下面是一个用于1x1x1多维数据集的示例X3D线框文件:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN"
  "http://www.web3d.org/specifications/x3d-3.0.dtd">
<X3D profile="Immersive" >
  <Scene>

    <Transform>
      <Shape>
        <LineSet vertexCount="5">
            <Coordinate point="1 0 0
                               1 1 0
                               0 1 0
                               0 0 0
                               1 0 0"
                               />
        </LineSet>
    </Shape>
    <Shape>
        <LineSet vertexCount="5">
            <Coordinate point="1 0 1
                               1 1 1
                               0 1 1
                               0 0 1
                               1 0 1"
                               />
        </LineSet>
    </Shape>
    <Shape>
        <LineSet vertexCount="5">
            <Coordinate point="0 0 1
                               1 0 1
                               1 0 0
                               0 0 0
                               0 0 1"
                               />
        </LineSet>
    </Shape>
    <Shape>
        <LineSet vertexCount="5">
            <Coordinate point="0 1 1
                               1 1 1
                               1 1 0
                               0 1 0
                               0 1 1"
                               />
        </LineSet>
      </Shape>
    </Transform>
  </Scene>
</X3D>
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-09-01 11:50:17

为了使用编写文件的方法,您可以研究X3D,它是VRML的继承者。还请参见此向量图形标记语言列表

票数 1
EN

Stack Overflow用户

发布于 2009-08-28 07:35:26

我不是3D编程专家,但有一个简单的技巧,你可以做。

如果您想象z轴与屏幕垂直,那么您可以投影一个3D点(x, y, z),如:(zoom_factor*(x/z), zoom_factor*(y/z))

票数 1
EN

Stack Overflow用户

发布于 2009-08-28 15:03:35

您可以尝试PyQwt3D包。如果这不起作用,下面是一个可能有用的其他python包列表

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1345485

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档