原創(chuàng)|行業(yè)資訊|編輯:吳秋紅|2023-08-17 10:04:15.257|閱讀 134 次
概述:HOOPS Exchange 包括一個(gè) Parasolid 連接器,它允許 Parasolid 開(kāi)發(fā)人員輕松地將 CAD 數(shù)據(jù)導(dǎo)入到活動(dòng)的 Parasolid 會(huì)話中。如果源數(shù)據(jù)基于 Parasolid(NX、Solid Edge 或 SolidWorks),則數(shù)據(jù)將按原樣導(dǎo)入。這意味著您可以假設(shè)數(shù)據(jù)的質(zhì)量與您在 SolidWorks、Solid Edge 或 NX 中獲得的數(shù)據(jù)完全相同。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
相關(guān)鏈接:
概述
包括一個(gè) Parasolid 連接器,它允許 Parasolid 開(kāi)發(fā)人員輕松地將 CAD 數(shù)據(jù)導(dǎo)入到活動(dòng)的 Parasolid 會(huì)話中。如果源數(shù)據(jù)基于 Parasolid(NX、Solid Edge 或 SolidWorks),則數(shù)據(jù)將按原樣導(dǎo)入。這意味著您可以假設(shè)數(shù)據(jù)的質(zhì)量與您在 SolidWorks、Solid Edge 或 NX 中獲得的數(shù)據(jù)完全相同。如果數(shù)據(jù)源自非 Parasolid 系統(tǒng)(例如 Catia、Creo 或 STEP 等),那么我們的連接器會(huì)利用 Parasolid 和可選的 PS/BodyShop 來(lái)確保模型以最高質(zhì)量導(dǎo)入。Parasolid 模型與附加數(shù)據(jù)(例如 PMI、裝配結(jié)構(gòu)和元數(shù)據(jù))之間的連接維護(hù)在映射表中。
使用 Parasolid 連接器的 API 為:func:A3DAsmModelFileTranslateToPkParts和:struct:A3DRepresentationItemTranslateToPkParts。在這兩種情況下,可以導(dǎo)出到 Parasolid 會(huì)話的所有內(nèi)容都會(huì)被傳輸,并且 Exchange 提供映射 ( :struct:A3DMiscPKMapper ) 以保持 PRC 數(shù)據(jù)和生成的PK_ENTITY之間的雙向鏈接。例如:
即使面或邊緣被縫合或合并在橋中,該方法也有效。在“完全集成”中,零件被一一傳輸,整個(gè)裝配結(jié)構(gòu)被傳輸?shù)綀?chǎng)景圖中,允許您管理可見(jiàn)性、視圖和其他元數(shù)據(jù)。
下圖是基于 Parasolid 的應(yīng)用程序的屏幕截圖,顯示了導(dǎo)入的 CatiaV5 模型,并維護(hù)了語(yǔ)義 PMI
中的加載選項(xiàng)A3DRWParamsTranslateToPkPartsData會(huì)對(duì)性能和模型質(zhì)量產(chǎn)生重大影響,因此下面對(duì)每個(gè)選項(xiàng)進(jìn)行回顧。
場(chǎng)地 |
類型 |
描述 |
---|---|---|
m_eHealing |
A3DETranslateToPkParts修復(fù) |
枚舉來(lái)控制愈合。修復(fù)控制拓?fù)涔畹恼{(diào)整、消除幾何不連續(xù)性、消除切片器面等。可以啟用、禁用此選項(xiàng),或僅對(duì)非 Parasolid 文件啟用此選項(xiàng)。 |
m_eComputeAccurateEdges |
A3DETranslateToPkPartsAccurate |
枚舉來(lái)控制精確的邊緣計(jì)算。可以啟用、禁用此選項(xiàng),或僅對(duì)非 Parasolid 文件啟用此選項(xiàng)。 |
m_bDisjoinIfFaceFaceError |
A3D布爾 |
如果為 TRUE,則具有面-面錯(cuò)誤的實(shí)體將被分離。這意味著當(dāng)檢測(cè)到錯(cuò)誤時(shí),有問(wèn)題的人臉將與模型的其余部分隔離。僅在 PK_FACE_state_bad_face_face_c 錯(cuò)誤的情況下才將面視為分離:自相交體。 |
m_bSew |
A3D布爾 |
控制是否啟用縫紉。 |
m_dSewingTolerance |
A3D雙 |
縫紉算法的公差。 |
m_eSimplifyGeometry |
A3DETranslateToPkPartsSimplifyGeometry |
通過(guò)盡可能將曲線數(shù)據(jù)轉(zhuǎn)換為相應(yīng)的分析形式(例如圓錐體、平面或球體)來(lái)簡(jiǎn)化幾何和拓?fù)洹?/span>可以啟用、禁用此選項(xiàng),或僅對(duì)非 Parasolid 文件啟用此選項(xiàng)。 |
m_eMergeEntities |
A3DETranslateToPkPartsMergeEntities |
刪除多余的邊緣和表面,以減少內(nèi)存占用并提高性能。可以啟用、禁用此選項(xiàng),或僅對(duì)非 Parasolid 文件啟用此選項(xiàng)。 |
m_pcPSBodyShopPath |
A3DUTF8Char* |
PSBodyshop DLL 的路徑。Exchange 將使用 PSBodyshop 來(lái)提高非 Parasolid 模型的導(dǎo)出質(zhì)量。也就是說(shuō),更多的實(shí)體被近似為分析,并且更多的實(shí)體被合并。這是一個(gè)可選字段:僅當(dāng)您想提供自己的庫(kù)時(shí)才可以考慮設(shè)置它。 |
m_pMapper |
A3DMiscMapper** |
Mapper 用于檢索 PRC 和 Parasolid 實(shí)體之間的鏈接。請(qǐng)參閱下面的部分。 |
m_bUseColour2Attribute |
A3D布爾 |
使用 SDL/TYSA_COLOUR_2 Parasolid 屬性 |
m_bUseUNameAttribute |
A3D布爾 |
使用 SDL/TYSA_UNAME Parasolid 屬性。 |
m_bUseLayerAttribute |
A3D布爾 |
使用 SDL/TYSA_LAYER Parasolid 屬性。 |
m_uiNbProc |
A3D布爾 |
僅適用于 A3DAsmModelFileTranslateToPkParts:使用它來(lái)決定使用的進(jìn)程數(shù)。如果為 0 1 或 A3DAsmModelFileTranslateToPkParts 將僅在當(dāng)前進(jìn)程中運(yùn)行。對(duì)于任何其他值,操作將使用請(qǐng)求的進(jìn)程數(shù)執(zhí)行。如果系統(tǒng)不支持,該字段可能會(huì)自動(dòng)限制為較低的值。 |
和Parasolid獨(dú)立運(yùn)行。因此,為了使用任何與Parasolid相關(guān)的Exchange功能,您將需要有效的Parasolid會(huì)話。HOOPS Exchange不會(huì)自動(dòng)初始化Parasolid會(huì)話-會(huì)話管理由您決定。此外,請(qǐng)考慮以下事項(xiàng):
Parasolid 的最低版本在 Windows 上為24.1 ,在 Linux 上為27.0。對(duì)于 Parasolid 收斂建模(多面數(shù)據(jù)),您至少需要28.1。
執(zhí)行環(huán)境必須有一個(gè)名為P_SCHEMA的已定義環(huán)境變量,該變量擴(kuò)展為 Parasolid Schema文件夾的路徑。
Parasolid 橋在 macOS 上不可用。
iOS 版 僅作為靜態(tài)庫(kù) ( libA3DLIBS.a ) 提供。Parasolid 橋是一個(gè)名為libhepb.a 的靜態(tài)庫(kù),可在我們的軟件包中使用。如果您想在應(yīng)用程序中使用我們的 Parasolid 橋,則必須將其鏈接到libhepb.a。如果你不使用它,它的功能就會(huì)被假冒的功能所取代。必須通過(guò)定義 A3DAPI_NO_IOS_HEPB_STUB` 來(lái)禁用此默認(rèn)行為。因此,對(duì)于要在 iOS 上使用 Parasolid Bridge 運(yùn)行 HOOPS Exchange 的客戶端應(yīng)用程序,必須滿足以下條件:
您的應(yīng)用程序必須鏈接到libA3DLIBS.a和libhepb.a
加載API時(shí)代碼必須定義A3DAPI_NO_IOS_HEPB_STUB
測(cè)繪
翻譯后,了解 PRC 中的哪些拓?fù)鋵?shí)體對(duì)應(yīng)于 Parasolid 實(shí)體可能會(huì)很有用,反之亦然。此外,匹配并不總是“一對(duì)一”,因?yàn)橹委熓窃谶^(guò)程中完成的:
縫紉過(guò)程可以根據(jù)提供的縫紉公差將兩個(gè)閉合邊緣合并為一個(gè)。
太小的邊可能會(huì)從生成的拓?fù)渲袆h除
以下代碼片段演示了如何使用:func:A3DAsmModelFileTranslateToPkParts將模型加載到 Parasolid 會(huì)話中:
A3DRWParamsExportParasolidDatasExportOptions;A3D_INITIALIZE_DATA(A3DRWParamsExportParasolidData,sExportOptions);// ... set your desired export options hereintiNbPkParts;PK_PART_t*pPkParts;A3DAsmModelFileTranslateToPkParts(sHoopsExchangeLoader.m_psModelFile,&sOptions,// Parasolid options structure&pParamsTranslateToPkPartsData,// Parasolid translation structure&iNbPkParts,// [out] length of pPkParts&pPkParts);// [out] PK_PART_t entity IDs
重要提示: Parasolid 建模器使用米作為默認(rèn)單位。將文件導(dǎo)出到 Parasolid 會(huì)話時(shí),Exchange 會(huì)將模型中的比例轉(zhuǎn)換為米。
在 Exchange 中設(shè)置 Parasolid 屬性
轉(zhuǎn)換為 Parasolid 的拓?fù)鋵?shí)體的唯一屬性是標(biāo)題以 H3DX_BRIDGE_* 開(kāi)頭的字符串屬性。這些屬性將被轉(zhuǎn)換為 Parasolid,其名稱以H3DX_BRIDGE/*開(kāi)頭。例如,標(biāo)題為H3DX_BRIDGE_MyAttributeName的字符串屬性將被轉(zhuǎn)換為名稱為H3DX_BRIDGE/MyAttributeName 的Parasolid 。
以下是在 Exchange 中設(shè)置 Parasolid 屬性的方法:
A3DMiscAttribute*pAttribute=0;A3DMiscAttributeDatasAttributeData;A3D_INITIALIZE_DATA(A3DMiscAttributeData,sAttributeData);sAttributeData.m_pcTitle="Parasolid attributes.";// will create parasolid attribute: H3DX_BRIDGE/MyAttributeNameA3DMiscSingleAttributeDatasSingleAttributeData;A3D_INITIALIZE_DATA(A3DMiscSingleAttributeData,sSingleAttributeData);sSingleAttributeData.m_bTitleIsInt=false;sSingleAttributeData.m_eType=kA3DModellerAttributeTypeString;sSingleAttributeData.m_pcTitle=(char*)"H3DX_BRIDGE_MyAttributeName";sSingleAttributeData.m_pcData=(char*)"My string attribute.";sAttributeData.m_uiSize=1;sAttributeData.m_pSingleAttributesData=&sSingleAttributeData;A3DMiscAttributeCreate(&sAttributeData,&pAttribute);sBaseData.m_uiSize=1;sBaseData.m_ppAttributes=(A3DMiscAttribute**)malloc(sBaseData.m_uiSize*A3DUns32(sizeof(A3DMiscAttribute*)));sBaseData.m_ppAttributes=&pAttribute;CHECK_RET(A3DRootBaseSet(pEntity,&sBaseData))
在此示例中,pEntity是您要為其定義屬性的A3DEntity 。
慧都科技是Tech Soft 3D-HOOPS在中國(guó)區(qū)的唯一增值服務(wù)商,負(fù)責(zé)HOOPS試用,咨詢,銷(xiāo)售,技術(shù)支持,售后,旨在為企業(yè)提供一站式的3D開(kāi)發(fā)解決方案。如果您的企業(yè)目前也有、的需求,需要獲得3D 輕量化引擎HOOPS的60天免費(fèi)試用,歡迎咨詢?cè)诰€客服或直接撥打023-68661681。
↓↓掃碼關(guān)注“HOOPS”微信公眾號(hào),及時(shí)獲取更多hoops技術(shù)資訊↓↓
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn