使用Java進行UG二次開發:簡單的例子(上)

來源:互聯網
上載者:User

    最近因為要進行TeamCenter二次開發(胖用戶端定製),所有要開始研究Java了。因此突發奇想為什麼不能使用Java進行二次開發呢?現在對UG進行的開發以C/C++應用為主。大多數使用的是原來的UF函數(也就是面向過程的0),無論是教程還是相關社區討論都比較多。使用NXOpen C++或者NXOpen.Net的就很少了。而使用Java的應該更少。

   其實NXOpen for java和其他的NXOpen技術都一樣,都是建立在Journal層上的開發介面。據說現在Siemens已經把NX底層100%的JA化了,而它基於JA的開發介面正在逐步實現。至少在NX 6.0的時候已經非常強大了。如果你現在要學習NX二次開發,或者你的項目是基於NX5.0以上的版本,我都推薦使用NXOpen族系的開發工具(NXOpen C++,NXOpen.Net,使用C#或者VB.Net)

  我這裡寫了一個關於使用Java進行NX二次開發的非常簡單的例子:就是產生一個Block。這個例子闡述了一個NXOpen for Java程式的基本架構。

import java.io.*;

import java.rmi.RemoteException;

import nxopen.*;

import nxopen.features.*;

 

public class HelloNX {

    

    public static void main(String[] args)

    {

        try

        {

            Session theSession = (Session)SessionFactory.get("Session");

            Part wrkPart = theSession.parts().work();

            BlockFeatureBuilder builder = wrkPart.features().createBlockFeatureBuilder(null);

            builder.setType(BlockFeatureBuilder.Types.ORIGIN_AND_EDGE_LENGTHS);

            Point3d origin = new Point3d(0.0,0.0,0.0);

            builder.setOriginAndLengths(origin,"100","100","100");

            builder.commit();

        }

        catch(NXException ex)

        {

            ex.printStackTrace();

        }

        catch(RemoteException ex)

        {

            ex.printStackTrace();

        }

        

    }

    public static int getUnloadOption()

    {

        return BaseSession.LibraryUnloadOption.IMMEDIATELY;

    }

}

1.首先編譯完成。

2.開啟UG後,建立一個零件。

3.Ctrl+U調出執行檔案選擇對話方塊,然後在檔案類型過濾處選擇.class檔案。

4.選擇你剛產生的檔案,比如HelloNX.class。程式執行後,產生Block。

好了,就這麼簡單!下次再會的時候我會對這段代碼進行解釋。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.