Hoops随便记的

包含图形的段
·几何
·属性:颜色,可见性,选择功能等等
·子段:更低层的段
段的名称
·段可以进行命名
·可以像文件系统一样表示路径:绝对路径、相对路径、通配符
当前段(激活的段)
·你可以在任何一个时间来处理段
·总存在一个激活的段
·激活的段以先入先出的方式压入堆栈

HC_Open_Segment(const char *segment)
HC_Close_Segment()
插入一条线
void HC_Insert_Line(double xa,double ya,double za,double xb,double yb,double zb)
xa,ya,za:起点坐标
xb,yb,zb:终点坐标

HC_Open_Segment(“XXX”);
HC_Insert_Line(0,0,0,1,1,1);
HC_Close_Segment();

颜色设置
Void HC_Set_Color(const char *color_spec)
颜色说明:字符串指定一个形体类型和颜色
“edges”-包含polygons,shells和meshes
“faces”-包含shells和meshes
“markers”-单独的点

HC_Open_Segment(“XXX”);
HC_Set_Color(“faces=red,line=white”);
HC_Close_Segment();

设置标记点符号
void HC_Set_Marker_Symbol(const char * symbol)

符号:字符串来定义符号点
“()”or“O”:封闭的圆(缺省)
“*”:星号
“+”:加号
“.”:点

HC_Open_Segment(“XXX”);
HC_Set_Marker_Symbol(“+”);
HC_Close_Segment();

设置标记的大小
void HC_Set_Marker_Size(double weight);

大小:缺省大小时场景的0.1%
HC_Open_Segment(“XXX”);
HC_Set_Marker_Size(2);
HC_Close_Segment();

HC_Set_Line_Weight //设置线宽
宽度:缺省线宽是场景的0.1%
HC_Set_Line_Pattern //设置线型
线型:字符串来定义线型:“实线”,“虚线”,“点划线”,“双点划线”
HC_Set_Visibility //设置对象的可见性和有效性
List:字符串定义选项
edges、faces、markers
终止应用程序的方法
释放应用程序使用的数据
终止HOOPS
HC_Exit_Program()
一些编译器和操作系统并不能完成该操作
释放HOOPS分配的内存
HC_Reset_System()
HC_Reset_System()在HC_Exit_Program()中调用

对每个编译器来说头部名称是不同的
HC_是作为C/C++的头部名称来使用
HC_<动词>_<名词>
HC_Set_Color
HC_Insert_Circle
HC_Define_Colormap
提供相关的函数
HC_KXXX()
返回一个段或几何图元的键值
HC_QXXX()
内部实现打开和关闭指定段
HC_QKXXX()
内部实现打开和关闭指定段
返回一个段的键值

字符串可以包含特殊文字
支持下划线和空格
缺省情况下不区分大小写字母
编译器不能发现错误的字符串
在运行的时候HOOPS会显示错误消息

段的名称中可以包含路径
绝对路径
“/include library/model/airplane”
相对路径
“../../fuselage/landing gear”
通配符
“*”
其他
“.”当前段
“..”上一层段
“…”进行递归

段和几何图元都通过键值(HC_KEY)来管理
HC_KEY的类型与长整数是相同的
依赖于系统的结构
通常是32位或者是64位
有时它比使用字符串名称更加方便
将3dGS的对象映射到应用程序对象
操作另一个结构

每一个段有一个4×4矩阵
在段层上进行操作
对段中的所有几何都是有效的
两种方法来操作矩阵
标准函数
HC_Rotate_Object
(Moves the represented object about its X-, Y-, or Z-axis.)//旋转
Rotate_Object_Offaxis
(Moves the represented object about an arbitrary axis.)//任意轴旋转
HC_Scale_Object
(Enlarges or reduces objects within the user data space. Not to be confused with Zoom_Camera.)
(在用户数据空间中放大或缩小对象。 不要与Zoom_Camera混淆。)
HC_Transform_Object//(没找到这个方法,但文档上有写)
HC_Translate_Object//平移
直接设置矩阵
HC_Append_Modelling_Metrix级联-矩阵相乘
HC_Set_Modelling_Metrix重新设
移动段中指定对象的方法
将指定的对象移动到其他段中
修改一个段的矩阵

HOOPS MVO的段结构
HDB:
·程序启动时就被创建
·创建和删除对象
·是从CWinApp派生出来的
·定义应用程序使用的全局对象
·保存驱动器的数目
·启动和终止HOOPS
HBaseModel:处理在包含库下的段
HBaseView:处理在驱动段下的段和实例
HBaseOperator:处理图形用户界面/事件循环
·相机操作
·几何对象操作
·选择

时间: 2024-07-29 19:05:16

Hoops随便记的的相关文章

Designing Evolvable Web API with ASP.NET 随便读,随便记 “The Internet,the World Wide Web,and HTTP”——HTTP

HTTP 我们将只聚焦在于与创建 Web APIs有关的部分. HTTP 是信息系统中的一个应用层协议,是Web的支柱. 其原先由 Berners-Lee, Roy Fielding 和 Henrik Frystyk Nielsen 三位计算机科学家们创作的.HTTP 为 客户端与服务器端之间跨网络相互传输信息定义了一个接口.它隐藏了双方的实现细 节. HTTP 设计用来戏剧性地改变系统,而容许一定程度上的延迟和数据的过时. 这种设计允许 计算机中间媒体,如代理服务器来协调通信,提供诸多好处,

Designing Evolvable Web API with ASP.NET 随便读,随便记 &ldquo;The Internet,the World Wide Web,and HTTP&rdquo;

1982年,诞生了 Internet; 1989年,诞生了World Wide Web . "World Wide Web"的构造为主要由 三部分构成: resources 资源 URIs 统一资源标识符 representations  呈现 其中,资源并不特指数据库之类的.任何东西可以是资源. URIs 分为两类: URLs 和URNs . URL 具有标识,并定位资源的功能. URN 则只是起标识作用. 通常讲,URI 默认指的是 URL. Google 建议,不要对实施了缓存的

XNA Game Studio 4.0 Programming 随便读,随便记 &ldquo;Game Class&rdquo;

XNA 中的 Game 类,是所有神奇事情发生的地方.几乎游戏中所有的事情都由它来操办. 它是项目中的王者,让我们深入窥探一番: 虚方法 Game 本身从众多其它地方继续了许多能力才能完成游戏中的事情.因而它必然会重写一些方法, 以更好地完成任务.我们已经看到了一些: Initialize ,如你所见,这个方法在Game类自身创建后,调用一次.在这里你可 以执行一些初始化游戏的动作,比如加载游戏的其它组件. Update ,这个方法,顾名思义,就是用来更新的.你可以在这里执行游戏状态的 更新.比

随便记记(一)

一.for循环 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 - 常规 for i := 0; i < count; i++ {} - "while" for condition { } - "do-while" for { doSomething() if condition { break } } - iterator loop for k, v := range f.Value {} - dead loop for

python之路第二天 随便记记 今天主要很郁闷

为何要有操作系统 为了让程序员更轻松的完成命令电脑工作而存在的,控制硬件,服务于软件. 操作系统的位置 操作系统位于软件和硬件之间.操作系统由内核(运行于内核态,控制硬件)和系统调用(运行于用户态,为软件提供一个调用接口)组成 **操作系统的功能 1.为应用程序提供如何使用硬件资源的抽象 2.使硬件和软件的应用变的有序化 **多道技术 多道指的是多道程序 空间上复用:内存可以存在多个文件,内存必须实现物理级别隔离,特点(安全性,稳定性) 时间上的复用:CPU可以切换(一个软件占用CPU时间过长,

随便记一记(2)

12.27 在昨天休息的比较充分的情况下,感冒已经差不多好了. 想除了健身之外再培养一份兴趣,但是还没想好,想写作,像摄影,想画画,想练字. 但是每一个都需要下苦工啊,光是健身这一项就要耗费我每周六七个小时. 想挤出更多的时间就应该剪枝和提升效率了. 目前耗费最多的时间应该是无意义的社交,和用手机浏览没用的东西,应该减少这方面的时间. 然后是提高效率,提高效率的代价就是耗费精力比较大,所以这个问题应该去除. 做事先想清楚了再做也会节约很多时间. ...................... 那就

ORB随便记一记

论文摘取 (这部分看的是泡泡机器人的翻译) 基于特征点.单目.完全自动初始化,基于PTAM框架. 相关工作 A.位置识别(大概是用于回环检测) bags of words FAB-map DBOW2 covisibility 信息返回多个假设 B.地图初始化 单目SLAM需要初始化,两种方法:Mono-slam和LSD-slam(逆深度参数) 本文采用基于模型的初始化方法 平面场景:单应性矩阵 非平面场景:基础矩阵 C.单目SLAM 最初:每一帧采用滤波器联合地图特征和相机位姿:处理连续帧图像上

多事之秋,随便记点东西

notepad++使用技巧 1.开启列块编辑,迅速在行首添加字符2.去除重复项 ,正则替换 ^(.*?)$\s+?^(?=.*^\1$)   匹配新行 ^(.*?)$\s+?^(?=.*^\1$) 3.去除带.com的文字 正则替换  .*.com*                不匹配新行 .*.com* 原文地址:https://www.cnblogs.com/mke2fs/p/12198987.html

记一次grub的修复or修改

情况是这样的,我的笔记本是装的双操作系统,一个win7,一个Fedora,win7用了很久了,很卡很慢,至于这个慢的原因,也大略去搜了搜,貌似是什么文件系统离散什么的吧,可能有点儿深,暂时没很懂. 用U盘,进PE,装原版win7,复制完重启后,屏幕提示 grub rescue> 又是一顿乱搜,找一个如下操作: grub recue>ls  #列出磁盘所有的文件系统,然后在一个个去看linux,win7是装在那块. grub rescue>set root=(hd0,msdos2)  #我