找回密码 注册 QQ登录
开思网工业级高精度在线3D打印服务

iCAx开思网

CAD/CAM/CAE/设计/模具 高清视频【积分说明】如何快速获得积分?快速3D打印 手板模型CNC加工服务在线3D打印服务,上传模型,自动报价
查看: 18057|回复: 7
打印 上一主题 下一主题

CAA变量类型转换

[复制链接]
跳转到指定楼层
1
发表于 2005-4-24 13:16:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多同行朋友,交流,分享,学习。

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

x
我用下面的句子得到一个点:  
CATIGSMPointCoord_var spPoint=_pFact->CreatePoint(x1,y1,z1);
想把它转换为 CATISpecObject_var 型,用这个语句
  CATISpecObject_var spPoint1(spPoint);
怎么老是报错,我想调用Update函数,应该怎么做
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
2
发表于 2005-4-25 00:59:49 | 只看该作者
應該不是錯在這吧
你寫的沒錯啊
是Compile-Time Error還是Runtime Error啊?
Compile-Time Error-->也許你少include了什麼東西?
Runtime Error-->也許Update失敗丟出了Exception?
  
SDK.
3
发表于 2005-4-26 09:29:03 | 只看该作者
我感觉也是,很多都是直接复制的。
  CATBaseUnknown * pLastPathElement;
  pLastPathElement=_daPathElement->GetElementValue();
  spPoint1=pLastPathElement;
还有这个也报错说不能从CATBaseUknown 类型转换为CATPoint_var类型。我只是把别人的原程序的CATSurface换为了CATPoint类型就错了。哪位高手能指点一下这两个的原因
错误:cannot convert from 'class CATBaseUnknown *' to 'class CATPoint *'
        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
4
发表于 2005-4-26 09:47:37 | 只看该作者
谢谢nctusdk兄,第一个就是你说的错误。
但第二个好像不是。错误出在用MKMK编译的时候。
5
发表于 2005-4-26 17:01:33 | 只看该作者
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
  
应该是这个原因,但我不太懂是什么意思,应该怎么改。
6
发表于 2005-4-27 09:54:31 | 只看该作者
等待中......................
7
发表于 2005-4-29 09:20:03 | 只看该作者
cannot convert from 'class CATBaseUnknown *' to 'class CATPoint *'  
        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
這代表...你搞錯了...@@
你的spPoint不是一個smart pointer...也就是說他不是CATPoint_var型別喔
而是CATPoint*型別
所以不可以直接硬轉
因為在CAA中指個同一個object的每一個interface的instance指標可能是不同的
請用QueryInterface或是把spPoint改成Smart Pointer
  
CATPoint *pPoint1 = NULL;
...
CATBaseUnknown * pLastPathElement;  
pLastPathElement=_daPathElement->GetElementValue();  
...
pLastPathElement->QueryInterface(IID_CATPoint,(void**)[$pPoint)]
  
或是
  
CATPoint_var spPoint = NULL_var;
...
CATBaseUnknown * pLastPathElement;  
pLastPathElement=_daPathElement->GetElementValue();  
...
spPoint = pLastPathElement;
  
SDK.
8
发表于 2005-4-30 15:47:41 | 只看该作者
谢谢nctusdk兄
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3D打印手板模型快速制作服务,在线报价下单!

QQ 咨询|手机版|联系我们|iCAx开思网  

GMT+8, 2024-12-23 17:45 , Processed in 0.029006 second(s), 11 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

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