PDMS二次开发软件

 找回密码
 注册 有问题进QQ群591484440

QQ登录

只需一步,快速开始

查看: 2412|回复: 7

[.Net C# C++] 请教几个.Net开发有关的问题

[复制链接]

签到天数: 2 天

[LV.1]瞎扑签到1级

新手上路

积分
74
发表于 2014-6-15 15:24:40 | 显示全部楼层 |阅读模式
最近在用.Net做一个插件,功能是导出PDMS模型,遇到了几个问题,想请教一下大家,还请不吝赐教:

1. 针对某个geometry,如何判断其是否需要被实际绘制?
2. 在Paragon元件库里使用的design param,如DDANGLE、DDHEIGHT,如何获取它们的值?(我只知道通过菜单Setting->Model Parameters可以设置这些参数的值,但不知如何在代码中获取)
3. 如何获取模型的颜色?

很感谢大家的关注和解答!

今天很开心!

签到天数: 30 天

[LV.5]瞎扑签到5级

管理员

积分
4321
发表于 2014-6-15 20:26:55 | 显示全部楼层
问题问得不错 可以不会啊
今天很开心!
回复 支持 反对

使用道具 举报

签到天数: 2 天

[LV.1]瞎扑签到1级

新手上路

积分
74
 楼主| 发表于 2014-6-16 08:50:37 | 显示全部楼层
仍然要多谢……
PML是如何实现这几个问题的呢?我想应该可以得到些线索
今天很开心!
回复 支持 反对

使用道具 举报

签到天数: 21 天

[LV.4]瞎扑签到4级

新手上路

积分
287

热心会员瞎扑达人突出贡献瞎扑元老

发表于 2014-6-16 18:53:25 | 显示全部楼层
本帖最后由 eryar 于 2014-6-16 18:57 编辑

1. 不明白你的意图。在Design中只要拖到视图就会绘制,不过有个Level属性可以来控制一下;
2. AVEVA .Net提供了DbExpression Class可以获取相应的属性值;
3. 模型颜色应该是根据rules来配置的,并没有保存颜色信息到模型中。

点评

多谢…… 对于问题1,已经在文档【Catalogues and Specifications User Guide.pdf】中找到,需要同时满足Level和Tube Flag,现在已经解决了; 对于问题2,我试过DbExpression,但不行,也可能是我当时没有抱太大希  详情 回复 发表于 2014-6-18 19:48
回复 支持 反对

使用道具 举报

签到天数: 2 天

[LV.1]瞎扑签到1级

新手上路

积分
74
 楼主| 发表于 2014-6-18 19:48:19 | 显示全部楼层
eryar 发表于 2014-6-16 18:53
1. 不明白你的意图。在Design中只要拖到视图就会绘制,不过有个Level属性可以来控制一下;
2. AVEVA .Net ...

多谢……
对于问题1,已经在文档【Catalogues and Specifications User Guide.pdf】中找到,需要同时满足Level和Tube Flag,现在已经解决了;
对于问题2,我试过DbExpression,但不行,也可能是我当时没有抱太大希望,没有用对方法,我会再仔细测试一次,得到一个确定结论,也会及时跟大家分享;
对于问题3,我目前仍然一无所获,您说根据rules设置的,能不能再详细一点?谢谢

点评

在pdmsuser目录中有个文件:%pdms_installed_dir%\pdmsuser\des-col.pmldat,内容如下:-- Data file for graphical colour options !!tmpGphColOpt.ce.colour(|yellow|) !!tmpGphColOpt.active.colour(|oranger  详情 回复 发表于 2014-6-21 16:00
今天很开心!
回复 支持 反对

使用道具 举报

签到天数: 21 天

[LV.4]瞎扑签到4级

新手上路

积分
287

热心会员瞎扑达人突出贡献瞎扑元老

发表于 2014-6-21 16:00:54 | 显示全部楼层
forumleo 发表于 2014-6-18 19:48
多谢……
对于问题1,已经在文档【Catalogues and Specifications User Guide.pdf】中找到,需要同时满 ...

在pdmsuser目录中有个文件:%pdms_installed_dir%\pdmsuser\des-col.pmldat,内容如下:-- Data file for graphical colour options

!!tmpGphColOpt.ce.colour(|yellow|)
!!tmpGphColOpt.active.colour(|orangered|)
!!tmpGphColOpt.aids.colour(|springgreen|)
!!tmpGphColOpt.visible.colour(|lightgrey|)
!!tmpGphColOpt.highlight.colour(|brightred|)

!tempArray = ARRAY()

!gphAutoColourRul = |Structural Hull Zones|
!gphAutoColTnslVal = 0
!gphAutoColEdgeOn = TRUE
!gphAutoColourCol = object COLOUR(|forestgreen|)
!gphAutoColour    = object GPHAUTOCOLOUR(!gphAutoColourRul, !gphAutoColourCol, !gphAutoColTnslVal, !gphAutoColEdgeOn)
!tempArray[1] = !gphAutoColour

!gphAutoColourRul = |All Sections|
!gphAutoColTnslVal = 0
!gphAutoColEdgeOn = FALSE
!gphAutoColourCol = object COLOUR(|steelblue|)
!gphAutoColour    = object GPHAUTOCOLOUR(!gphAutoColourRul, !gphAutoColourCol, !gphAutoColTnslVal, !gphAutoColEdgeOn)
!tempArray[2] = !gphAutoColour

!gphAutoColourRul = |All Equipment|
!gphAutoColTnslVal = 0
!gphAutoColEdgeOn = FALSE
!gphAutoColourCol = object COLOUR(|tan|)
!gphAutoColour    = object GPHAUTOCOLOUR(!gphAutoColourRul, !gphAutoColourCol, !gphAutoColTnslVal, !gphAutoColEdgeOn)
!tempArray[3] = !gphAutoColour

!gphAutoColourRul = |All Hangers|
!gphAutoColTnslVal = 0
!gphAutoColEdgeOn = FALSE
!gphAutoColourCol = object COLOUR(|powderblue|)
!gphAutoColour    = object GPHAUTOCOLOUR(!gphAutoColourRul, !gphAutoColourCol, !gphAutoColTnslVal, !gphAutoColEdgeOn)
!tempArray[4] = !gphAutoColour

!gphAutoColourRul = |All Pipe Branches|
!gphAutoColTnslVal = 0
!gphAutoColEdgeOn = FALSE
!gphAutoColourCol = object COLOUR(|gold|)
!gphAutoColour    = object GPHAUTOCOLOUR(!gphAutoColourRul, !gphAutoColourCol, !gphAutoColTnslVal, !gphAutoColEdgeOn)
!tempArray[5] = !gphAutoColour

!gphAutoColourRul = |Industrial Buildings CFloors|
!gphAutoColTnslVal = 0
!gphAutoColEdgeOn = FALSE
!gphAutoColourCol = object COLOUR(|lightgrey|)
!gphAutoColour    = object GPHAUTOCOLOUR(!gphAutoColourRul, !gphAutoColourCol, !gphAutoColTnslVal, !gphAutoColEdgeOn)
!tempArray[6] = !gphAutoColour

!!tmpGphColOpt.autoColourRules = !tempArray
!!tmpGphColOpt.autoColour = TRUE
!!tmpGphColOpt.dynamicAutoColour = TRUE

在这里定义了自动颜色的规则。


点评

很感谢你的热心回复,谢谢! 我在菜单Settings->Graphics的Colour选项卡中找到了对颜色的规则设置,但不知道如何在.Net中通过代码获取,.Net提供了DbRule和DbColour,但我看了一下,不知道怎么使用来获取模型颜色,  详情 回复 发表于 2014-6-23 14:43
hello idf tool
回复 支持 反对

使用道具 举报

签到天数: 2 天

[LV.1]瞎扑签到1级

新手上路

积分
74
 楼主| 发表于 2014-6-23 14:43:05 | 显示全部楼层
eryar 发表于 2014-6-21 16:00
在pdmsuser目录中有个文件:%pdms_installed_dir%\pdmsuser\des-col.pmldat,内容如下:-- Data file for ...

很感谢你的热心回复,谢谢!
我在菜单Settings->Graphics的Colour选项卡中找到了对颜色的规则设置,但不知道如何在.Net中通过代码获取,.Net提供了DbRule和DbColour,但我看了一下,不知道怎么使用来获取模型颜色,如果你了解关于这点的使用方法,还请多多指教,多谢!

类似的情况还有菜单Settings->Graphics下的Representation选项卡中的变量,也不清楚在什么地方获取……
今天很开心!
回复 支持 反对

使用道具 举报

签到天数: 21 天

[LV.4]瞎扑签到4级

新手上路

积分
287

热心会员瞎扑达人突出贡献瞎扑元老

发表于 2014-6-24 18:48:11 | 显示全部楼层
模型颜色还真不知道如何用C#来提取出来。
不过几何模型我已经可以导出来了:
AVEVA Model Data Exchange ChangeLog
http://www.cppblog.com/eryar/archive/2013/09/11/203182.html
hello idf tool
回复 支持 反对

使用道具 举报

本版积分规则

QQ|手机版|关于我们|Archiver|手机版|小黑屋|工程G3D ( 鄂ICP备16022302号-2 )

GMT+8, 2024-11-23 12:01 , Processed in 0.078128 second(s), 30 queries .

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表