PLM之家PLMHome-国产软件践行者

[已解决] 大家好,怎么获取UG预览图片

  [复制链接]

2017-8-21 20:08:20 5070 7

简简单单 发表于 2014-9-20 17:05:18 |阅读模式

简简单单 楼主

2014-9-20 17:05:18

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
大家好,怎么获取UG预览图片. A) G5 N/ r( Q9 U
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复7

admin 发表于 2014-9-21 08:48:08

admin 沙发

2014-9-21 08:48:08

什么叫预览图片" k. _0 N; p4 ]1 x! f3 B
6 Y' U& h' G9 p. P) K+ ^6 K
如果是预览的话,实际上就是创建了这个对象,只是设置了不同的透明度 的效果,具体的你可以看NXOpen的例子i , 有个 预览拉伸的功能2 c! e, V. s1 o0 V% h& s; t- e
7 @5 B4 a5 h" M3 q4 E
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2014-9-21 08:58:04

admin 板凳

2014-9-21 08:58:04

if (preview)- G* ~' r( e  t" U  B, E: G
    {
4 V+ N5 e7 H$ U; N        NXOpen::Features::BodyFeature* bodyfeat = % v% B; T$ q+ M$ Z
            dynamic_cast<NXOpen::Features::BodyFeature* >(feature1);* y8 {  b- }% f" E
        std::vector<NXOpen::Body* > featureBodies = bodyfeat->GetBodies();
1 |! R/ k" |5 x) A9 J  M# \
$ S4 A# `, A$ k' [        NXOpen::DisplayModification* displayModification1 =
1 y% [4 X* l; P4 r: z            ExtrudewithPreview::theSession->DisplayManager()->NewDisplayModification();
- k8 P# y. y; ]" P        displayModification1->SetApplyToAllFaces(true);
4 I5 L, i% ^, N5 S; R5 f; P        displayModification1->SetNewTranslucency(80);
2 f/ F; e/ x3 E/ ~9 }" G/ w
0 N3 H$ [: a% B& P$ J        std::vector<NXOpen::DisplayableObject* > objects1(featureBodies.size());
/ t9 Z" f/ c) }1 a- r0 P        for (unsigned int ii = 0; ii < featureBodies.size(); ++ii)
9 b2 \& |0 z. K3 y+ ?8 G        {
  f$ i8 \; ^) t( C) P% J' t            NXOpen::Body* body = featureBodies[ii];
; h8 U+ c, j/ k, x0 `- \# q            objects1[ii] = dynamic_cast<NXOpen::DisplayableObject* > (body);
2 [  q4 A+ Q9 u! u5 Q* O6 C  n        }" f" n6 h& _% E' F1 S, p* u$ J
; e; x8 K) M5 h/ T* I; B
        displayModification1->Apply(objects1);% J, l1 `/ z7 B
        workPart->ModelingViews()->WorkView()->SetRenderingStyle(NXOpen::View::RenderingStyleTypeShadedWithEdges);) W* i. L$ Y) Q: [( g; U
    }+ g' N4 D% {/ r$ j4 K
    else1 v) h( n, E* v7 |5 k' [
    {& R9 n. A4 V) E! F% V/ g' x+ b0 ]
        NXOpen::Features::BodyFeature* bodyfeat = ( Q$ D+ O0 Q: ~" ^7 i3 `: J" s
            dynamic_cast<NXOpen::Features::BodyFeature* >(feature1);2 _" K# b4 W* P. T7 v, q% v
        std::vector<NXOpen::Body* > featureBodies = bodyfeat->GetBodies();
; a8 |1 k0 F8 ]7 B& D6 t3 N
7 n* h! b: a+ Z6 t* g& ?        NXOpen::DisplayModification* displayModification1 = 8 d" [7 T* T9 f$ C0 R; V
            ExtrudewithPreview::theSession->DisplayManager()->NewDisplayModification();' U) f; h: {1 U- N3 l$ W
        displayModification1->SetApplyToAllFaces(true);" ?% E! V" r% g
        displayModification1->SetNewTranslucency(100);" b7 k% f! U/ F9 k

5 |3 a! ~3 p4 y( h0 N8 A4 x        std::vector<NXOpen::DisplayableObject* > objects1(featureBodies.size());5 ?: N! Z7 Y& B  j, ~4 b
        for (unsigned int ii = 0; ii < featureBodies.size(); ++ii)
, x6 P4 U7 u, d& Z        {
2 f9 V0 M7 T: w+ G4 Z            objects1[ii] = featureBodies[ii];
/ t7 E! ?4 h6 A7 t# T: q6 N        }
! Y/ P5 U' G# D8 M% D% P/ G: q
6 ~: Y' T3 p7 g2 ~        displayModification1->Apply(objects1);
  ?* ]6 e, d/ `! H% _7 U        workPart->ModelingViews()->WorkView()->SetRenderingStyle(NXOpen::View::RenderingStyleTypeShaded);
3 z' L3 \0 c0 j5 }8 C6 d    }( c/ H9 ]9 O' |! m1 `' N+ h- I
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

简简单单 发表于 2014-9-21 22:34:37

简简单单 地板

2014-9-21 22:34:37

admin 发表于 2014-9-21 08:48  M/ O. w* G* M# q# H( o7 ^
什么叫预览图片
& h" A, ^# P% k- ~1 W8 q) b) _& e4 I: z8 [8 G7 Q
如果是预览的话,实际上就是创建了这个对象,只是设置了不同的透明度 的效果,具体的你可 ...
# U0 _+ x$ R' p' D
不好意思,我们说清楚,我说的是打一个零件时,旁边有个预览图片,& {% |( Y+ O  ?' N. `$ ^2 c' i$ f8 {
- a! P7 G1 T, [4 t9 y7 \9 L1 p) A
我想用它的图片做标准件库用,不想自己截图做
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

简简单单 发表于 2014-9-22 22:59:31

简简单单 6#

2014-9-22 22:59:31

admin 发表于 2014-9-21 08:58
/ f; K8 ?6 d% x3 _if (preview)
7 S2 K, Y+ U8 d6 e8 i, e    {$ {8 r& v8 s0 z# d4 E" [1 T
        NXOpen::Features::BodyFeature* bodyfeat =

! P! S! l  Q, \& e' A: l
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2014-9-23 13:55:04

admin 7#

2014-9-23 13:55:04

简简单单 发表于 2014-9-21 14:36
. S! Z$ U: L. X类似这样

' U5 _% @: G" pgateway_captureImageBulider 看看这个类
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

rkc_555 发表于 2017-8-21 20:08:20

rkc_555 8#

2017-8-21 20:08:20

本帖最后由 rkc_555 于 2018-12-7 19:00 编辑
& E! _; B: j3 I/ b# Q% y. U  |
- N* [* W6 b2 {  }+ @* j4 HbasePart类下有一个函数可以获得建模的预览图
8 u1 e2 j3 K: wvoid NXOpen::BasePart::GetPreviewImage  ( int *  width,  
  s3 A( B6 ]- `- Y6 U  int *  height,  1 m9 ]6 v2 h1 V% `" L1 s+ S8 }
  std::vector< int > &  pixels  2 n  E3 v# f0 a+ |; ~" y" @+ \
)  7 n9 b, m+ N  ~, Y
也可以看一下这个公众号的文章UG NX二次开发获取模型的预览图片(一)& L7 s& u  L7 y0 V1 D: u: L4 U
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了