Rhino(犀牛)中国技术支持与推广中心

标题: 请求技术指导,关于rhinocommon [打印本页]

作者: 设计好爱者    时间: 2016-1-16 21:14
标题: 请求技术指导,关于rhinocommon
先谢过:
  我用TextureMapping类,获取了object 上的 通道1 贴图轴。 通过轴类型得知该轴是boxMapping 类型,然后我想提取出该Mapping 的几何信息(即是这个box的8个角点)。但我找了好久也没找到相关的函数方法


作者: 设计好爱者    时间: 2016-1-16 21:16
求大神指导
作者: Jorin    时间: 2016-1-18 00:58
本帖最后由 Jorin 于 2016-1-18 00:59 编辑

BoxMapping 并不是 TextureMapping 的子类,它仅仅是一个枚举而已,所以你无法从 BoxMapping 提取任何你想要的数据。

TextureMapping 对象有一个 TryGetMappingBox 方法,如果这个 TextureMapping 确实是以 BoxMapping 方式构造的,就可以提取出相关数据。


示例如下:


我先创建了一个 TextureMapping 对象,然后用 TryGetMappingBox 方法测试我输入的数据能否被提取出来。



  1. Rhino.Render.TextureMapping mapping = Rhino.Render.TextureMapping.CreateBoxMapping(Rhino.Geometry.Plane.WorldXY, a, b, c, true);
  2.     Rhino.Geometry.Plane plane;
  3.     Rhino.Geometry.Interval Ix,Iy,Iz;
  4.     mapping.TryGetMappingBox(out plane, out Ix, out Iy, out Iz);
  5.     A = mapping;
  6.     x = Ix;
  7.     y = Iy;
  8.     z = Iz;
复制代码


测试结果表明,TryGetMappingBox 方法能够获得数据,但值得注意的是,不论输入什么样的范围,得到的范围都是平均分配与 0 左右的







作者: 设计好爱者    时间: 2016-1-22 15:05
Jorin 发表于 2016-1-18 00:58
BoxMapping 并不是 TextureMapping 的子类,它仅仅是一个枚举而已,所以你无法从 BoxMapping 提取任何你想 ...

多谢葫芦娃大神 !




欢迎光临 Rhino(犀牛)中国技术支持与推广中心 (http://bbs.rhino3d.asia/) Powered by Discuz! X3.2