NX二次開發UF_CAM_PREPRO_init_module 函數介紹

文章作者:里海
來源網站:https://blog.csdn.net/WangPaiFeiXingYuan

UF_CAM_PREPRO_init_module

Defined in: uf_cam_prepro.h?
int UF_CAM_PREPRO_init_module(void )

overview 概述

Initializes the required environment for this module.

初始化此模塊所需的環境。

UFUN例子

歡迎訂閱《里海NX二次開發3000例專欄》https://blog.csdn.net/wangpaifeixingyuan/category_8840986.html,點擊鏈接掃碼即可訂閱(持續更新中)。已經有幾百人訂閱,訂閱是永久的,無限期閱讀,如需幫助請私信。

parameters 參數

分割

C++語言在UG二次開發中的應用及綜合分析

  1. C++ 是C語言的擴展,它既可以執行C語言的過程化程序設計,也可以進行以抽象數據類型為特點的基于對象的設計,以及面向對象的程序設計。C++ 在處理問題規模上具有很大的適應性。
  2. C++不僅具有計算機高效運行的實用性特征,并且致力于提升大規模程序的編程質量以及程序設計語言的問題描述能力。

在UG二次開發中,C++語言具有以下特點

  1. C++語言支持多種程序設計風格
  2. C++的許多特性以庫的形式存在,保證了語言的簡潔和開發運行的效率
  3. 與C語言相比,C++引入了面向對象的概念,使得UG二次開發的人機交互界面更加簡潔
  4. 通過借助UG自帶的2000多種API函數,結合高級語言C++以及編程軟件Visual Studio,可以對UG進行二次開發
  5. 需要注意的是,市場上的Visual Studio和UG版本眾多,并非所有版本都能兼容

程序設計過程通常包括以下步驟:

  1. 問題分析:對要解決的問題進行深入的分析,理解問題的具體需求和限制。
  2. 需求定義:明確程序的目標和功能,包括用戶需求、系統需求等。
  3. 設計:根據需求進行設計,包括算法設計、數據結構設計、界面設計等。
  4. 編碼:根據設計的結果,使用一種編程語言將程序代碼實現出來。
  5. 測試:通過各種測試方法來確保程序的正確性,包括單元測試、集成測試、系統測試等。
  6. 維護:對程序進行修改和完善,以解決可能出現的問題或滿足新的需求。
  7. 文檔編寫:編寫程序文檔,描述程序的功能、操作方法、注意事項等。

以下是一個創建體素特征(塊、柱、錐、球)的二次開發例子

#include <stdio.h>
#include <stdarg.h>
#include <uf_modl_primitives.h>
#include <uf_ui_ugopen.h>
#include <uf.h>
#include <uf_defs.h>
//封裝打印函數,用于將信息打印到信息窗口
//QQ3123197280
int ECHO(const char* szFormat, ...)
{char szMsg[5000] = "";va_list arg_ptr;va_start(arg_ptr, szFormat);vsprintf_s(szMsg, szFormat, arg_ptr);va_end(arg_ptr);UF_UI_open_listing_window();UF_UI_write_listing_window(szMsg);return 0;
}
extern DllExport void ufusr(char* param, int* returnCode, int rlen)
{UF_initialize();//創建塊UF_FEATURE_SIGN sign = UF_NULLSIGN;//塊起點相對于ABSdouble block_orig[3] = { 0.0,0.0,0.0 };//方向相對于WCSchar* block_len[3] = { "10", "30", "10" };tag_t blk_obj;//體特征UF_MODL_create_block1(sign, block_orig, block_len, &blk_obj);int iEdit = 0;  char* size[3];UF_MODL_ask_block_parms(blk_obj, iEdit, size);ECHO("%s,%s,%s\n", size[0], size[1], size[2]);//輸出: p6=10,p7=30,p8=10//創建圓柱UF_FEATURE_SIGN sign1 = UF_NULLSIGN;double origin[3] = { 10.0,0.0,10.0 };char  height[] = "20";char  diam[] = "10";double direction[3] = { 0,0,1 };//方向tag_t  cyl_obj_id;UF_MODL_create_cyl1(sign1, origin, height, diam, direction, &cyl_obj_id);int iEdit2 = 0;  char* cDiameter;char* cHeight;UF_MODL_ask_cylinder_parms(cyl_obj_id, iEdit2, &cDiameter, &cHeight);ECHO("%s,%s\n", cDiameter, cHeight);//輸出:p9=10,p10=20UF_free(cDiameter);UF_free(cHeight);//創建圓錐UF_FEATURE_SIGN sign2 = UF_NULLSIGN;double origin2[3] = { 0.0,0.0,10.0 };char  height2[] = "20";char* diam2[2] = { "10" ,"5" };double direction2[3] = { 0,0,1 };//方向tag_t  cone_obj_id;UF_MODL_create_cone1(sign2, origin2, height2, diam2, direction2, &cone_obj_id);int iEdit3 = 0;  char* cD1;char* cD2;char* cH;char* cAngle;UF_MODL_ask_cone_parms(cone_obj_id, iEdit3, &cD1, &cD2, &cH, &cAngle);ECHO("%s,%s,%s,%s\n", cD1, cD2, cH, cAngle);//輸出:p11=10,p12=5,p13=20,p14=7.1250163489018UF_free(cD1);UF_free(cD2);UF_free(cH);UF_free(cAngle);//創建球UF_FEATURE_SIGN sign3 = UF_NULLSIGN;double douCenter2[3] = { 0.0,0.0,30.0 };char  cDiam[] = "8";tag_t  sphere_obj_id;UF_MODL_create_sphere1(sign3, douCenter2, cDiam, &sphere_obj_id);int iEdit4 = 0;  char* cDiam_parm;UF_MODL_ask_sphere_parms(sphere_obj_id, iEdit4, &cDiam_parm);ECHO("%s\n", cDiam_parm);//輸出:p15=8UF_free(cDiam_parm);UF_terminate();
}
extern int ufusr_ask_unload(void)
{return (UF_UNLOAD_IMMEDIATELY);
}

效果:
效果

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/161115.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/161115.shtml
英文地址,請注明出處:http://en.pswp.cn/news/161115.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

淺談Python裝飾器原理與用法分析

前言 本文實例講述了Python裝飾器原理與用法。分享給大家供大家參考&#xff0c;具體如下&#xff1a; 1、裝飾器的本質是函數&#xff0c;主要用來裝飾其他函數&#xff0c;也就是為其他函數添加附加功能 2、裝飾器的原則: (1) 裝飾器不能修改被裝飾的函數的源代碼 (2) 裝…

VScode調試沒有反應

點擊調試按鈕后沒反應 有可能是vscode中安裝的python插件版本問題 可以通過重新安裝比較舊一點的python嘗試解決此問題 步驟如下&#xff1a; 然后從中選擇比當前版本更低的版本即可 安裝完成后需重啟vscode

初識EasyAR

EasyAR 一、介紹&#xff08;核心還是 目標圖像的屏占比&#xff09; 支持 EasyAR-AR|AR技術|AR SDK|Unity AR|下載 1.表面、圖片(靜止/運動)跟蹤&#xff0c;支持多目標 2.3D物體(靜止/運動)跟蹤(注&#xff1a;物體旋轉、遠近移動也可以&#xff0c;本人試過&#xff0c;…

縱享雙創盛宴 “之江創客”再創電商新輝煌

消費日報網訊&#xff08;記者 牛夏風&#xff09;營造良好電商雙創生態&#xff0c;集聚電商發展新勢能。10月31日&#xff0c;以“開放、連接、協同、賦能”為主題的“之江創客”2023全球電子商務創業創新大賽總決賽暨頒獎典禮在湖州南潯圓滿落幕。 記者從現場獲悉&#xff…

SQL 中的 MIN 和 MAX 以及常見函數詳解及示例演示

SQL MIN() 和 MAX() 函數 SQL中的MIN()函數和MAX()函數用于查找所選列的最小值和最大值&#xff0c;分別。以下是它們的用法和示例&#xff1a; MIN() 函數 MIN()函數返回所選列的最小值。 示例&#xff1a; 查找Products表中的最低價格&#xff1a; SELECT MIN(Price) F…

js 獲取當前窗口顯示的放大比例

可以獲取當前窗口顯示的放大比例&#xff0c;也稱為設備像素比 (devicepixelratio) 。這通常用于處理高DPI (高分辨率)屏幕上的視圖縮放。您可以使用window.devicePixelRatio 屬性來獲得當前設備像素比。 以下是一個簡單的JavaScript示例&#xff0c;演示如何獲取設備像素比: j…

基于獼猴Spike運動解碼的不同解碼方法性能對比

公開數據集中文版詳細描述 參考前文&#xff1a;https://editor.csdn.net/md/?not_checkout1&spm1011.2124.3001.6192神經元Spike信號分析 參考前文&#xff1a;https://blog.csdn.net/qq_43811536/article/details/134359566?spm1001.2014.3001.5501神經元運動調制分析 …

2023 年戴森設計大獎得主是誰?給大樓降溫、爭取救援機會

2023 年戴森設計大獎得主是誰&#xff1f;給大樓降溫、爭取救援機會 ?編輯拉風的極客2023/11/22 摘要 當今社會除了持續不斷對科技創新保持注目&#xff0c;還有很多年輕發明家為了實際場景的難題提供解決方案。 11 月 15 日&#xff0c;2023 年戴森設計大獎國際大獎名單正…

Doris DDL和DML

1 創建用戶和數據庫 1)創建test用戶 mysql -h hadoop1 -P 9030 -uroot -p create user test identified by test; 2)創建數據庫 create database test_db; 3)用戶授權

2023年危險化學品生產單位安全生產管理人員證模擬考試題庫及危險化學品生產單位安全生產管理人員理論考試試題

題庫來源&#xff1a;安全生產模擬考試一點通公眾號小程序 2023年危險化學品生產單位安全生產管理人員證模擬考試題庫及危險化學品生產單位安全生產管理人員理論考試試題是由安全生產模擬考試一點通提供&#xff0c;危險化學品生產單位安全生產管理人員證模擬考試題庫是根據危…

文件的原理和應用

常識: 1 文件包括屬性和內容 2 文件有打開和未打開文件&#xff0c; 3 本文先討論誰打開的文件&#xff0c;以及如何管理已經打開的文件 一 回憶c接口 1 fopen 我們在test.c里面用一下fopen函數&#xff0c;不存在打開的文件會默認創建&#xff0c;那為什么默認新建在當前…

【Kettle實戰】字符串處理及網絡請求JSON格式處理

經過大量的kettle操作實踐&#xff0c;我們會漸漸掌握一些技巧&#xff0c;大大減輕清洗的工作量。比如在哪里 處理字符串更方便&#xff0c;在哪兒處理更合理都是一個取舍問題。 字符串拼接 MySQL中使用concat(字段1,字段2)&#xff0c;但是如果“字段2”為NULL&#xff0c;結…

高速公路智能公專融合調度系統方案

在現代高速公路交通設施中&#xff0c;無線對講通信系統已經慢慢成為至關重要的環節。完善無線通信系統可以實現語音和數據的實時傳輸&#xff0c;確保調度中心和現場工作人員的及時溝通&#xff0c;快速響應和提供協調支持。隨著國內高速公路的發展&#xff0c;通信系統建設需…

11月22日,每日信息差

今天是2023年11月22日&#xff0c;以下是為您準備的15條信息差 第一、微軟將投資5億美元在魁北克擴大云計算和人工智能基礎設施 第二、奇安信預計與中國電子CEC業務量大幅增加 第三、極數云舟發布云舟數據編織系統“Ark Fabric” 第四、美國企業對特定電子眼鏡產品及其組件…

如何在windows使用別名遠程執行命令

需求背景 在開發中,需要在服務器執行腳本,需要如下幾步操作: 1.打開xshell 2.登錄服務器 3.進入命令腳本的路徑 4.執行腳本 但是,作為懶人來說,操作太繁瑣了,真麻煩,能不能一鍵就解決那么多操作?所以,開始研究windows有沒有這個東西,而且不需要額外的軟件就可以實現的.結…

ABeam Recruiting | ABeam旗下德碩管理咨詢(上海)最新招聘崗位

誠聘英才 市場部經理 招聘背景 作為起源于亞洲的全球化咨詢公司&#xff0c; ABeam立志成為中國、乃至全球的杰出品牌 本次招聘崗位 以加快ABeam中國本土各法人 在中國市場的品牌推廣、提高企業知名度 強化Marketing部門的體制為目標 工作職責 在現有的PR業務基礎上&#…

PyTorch離線安裝

文章目錄 python安裝1. Anaconda 下載2. Anaconda 安裝pytorch安裝3. 顯卡配置(無 Nvidia 顯卡的略過)4. 新建虛擬環境,用于存放pytorch5. 安裝 CUDA6 安裝pytorch(torch,torchvision,torchaudio)7. 驗證是否安裝成功python安裝 1. Anaconda 下載 在機器學習,深度學習中…

C++多線程學習(二):多線程通信和鎖

參考引用 C11 14 17 20 多線程從原理到線程池實戰代碼運行環境&#xff1a;Visual Studio 2019 1. 多線程狀態 1.1 線程狀態說明 初始化 (lnit)&#xff1a;該線程正在被創建就緒 (Ready)&#xff1a;該線程在就緒列表中&#xff0c;等待 CPU 調度運行 (Running)&#xff1a;…

xss-labs靶場6-10關

文章目錄 前言一、靶場6-10關1、關卡62、關卡73、關卡84、關卡95、關卡10 總結 前言 此文章只用于學習和反思鞏固xss攻擊知識&#xff0c;禁止用于做非法攻擊。注意靶場是可以練習的平臺&#xff0c;不能隨意去尚未授權的網站做滲透測試&#xff01;&#xff01;&#xff01; …

在win10上安裝pytorch-gpu版本2

安裝anaconda即下載了python&#xff0c;還可以創建虛擬環境。 目錄 1.1 anaconda安裝 1.2 pytorch-gpu安裝 1.1 Anaconda安裝 anaconda的安裝請看我之前發的tensoflow-gpu安裝&#xff0c;里面有詳細的安裝過程&#xff0c;這里不做重復描述&#xff0c;傳送門 1.2 pyt…