FreeCAD二次開發(fā)-工作臺開發(fā)(使用pycharm)

一. FreeCAD的二次開發(fā)

freecad作為一款開源的三維軟件,開發(fā)相當簡便,使用python開發(fā)也更為簡單。

二.環(huán)境配置

我是使用pycharm直接編輯新建的工作臺文件夾,freecad自帶的python2.7作為編譯環(huán)境。

三. 主要文件

在mod文件夾下的工作臺主要文件有
init.py 表示執(zhí)行開始,一般沒有實際內(nèi)容,可以為空,但必須要有;
InitGui.py 工作臺的ui內(nèi)容;
然后就是其他的command文件;

四. InitGui.py的內(nèi)容

# -*- coding: utf-8 -*-
# _TEMPLATEPY_ gui init module
# (c) 2001 Juergen Riegel
# License LGPL

# 繼承workbench類,
class _TEMPLATEPY_Workbench ( Workbench ):#類名便是python控制臺里的名字
    "_TEMPLATEPY_ workbench object"
    #加載工作臺圖標
    Icon = FreeCAD.getHomePath() + "Mod/_TEMPLATEPY_/Resources/icons/_TEMPLATEPY_Workbench.svg"
    MenuText = "WeiGan"#
    ToolTip = "WeiGan workbench"
    
    def Initialize(self):
        # load the module
        import _TEMPLATEPY_Gui ,MySecondCommand#導入插件的工具欄
          #導入我的第二個工具欄
        self.appendToolbar('WeiGan',['_TEMPLATEPY__HelloWorld','MySecondCommand'])#把按鈕添加為toolbar(模塊),第一個是工作臺的名字,第二個是按鈕列表
        self.appendMenu('WeiGan',['_TEMPLATEPY__HelloWorld','MySecondCommand'])#把按鈕添加到菜單欄里
    
    def GetClassName(self):
        return "Gui::PythonWorkbench"

Gui.addWorkbench(_TEMPLATEPY_Workbench())

五. 如何新建一個按鈕

···

-- coding: utf-8 --

FreeCAD tools of the TEMPLATEPY workbench

(c) 2001 Juergen Riegel

License LGPL

import FreeCAD, FreeCADGui
class MySecondCommand:
def Activated(self): #點擊按鈕執(zhí)行的動作
FreeCAD.Console.PrintMessage("Hello, World!\n")
def IsActive(self):
FreeCAD.Console.PrintMessage("hi,you enter me")
return True
def GetResources(self):
return {'Pixmap': 'freecad', 'MenuText': 'Hello World', 'ToolTip': 'Print Hello World'}
FreeCADGui.addCommand('MySecondCommand', MySecondCommand())
···


1543327356(1).png

1543327454(1).png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • 寫在前面的話 代碼中的# > 表示的是輸出結(jié)果 輸入 使用input()函數(shù) 用法 注意input函數(shù)輸出的均是字...
    FlyingLittlePG閱讀 3,208評論 0 9
  • 1、開啟公眾號開發(fā)者模式 公眾平臺的技術(shù)文檔目的為了簡明扼要的交代接口的使用,語句難免苦澀難懂,甚至對于不同的讀者...
    good7758閱讀 1,656評論 0 1
  • 1/579文件IO文件介紹I/O流流的概念讀寫文件文件備份IO介紹大家應該聽說過一句話:“好記性不如爛筆頭”。不僅...
    清清子衿木子水心閱讀 1,556評論 0 1
  • 基礎1.r''表示''內(nèi)部的字符串默認不轉(zhuǎn)義2.'''...'''表示多行內(nèi)容3. 布爾值:True、False(...
    neo已經(jīng)被使用閱讀 1,879評論 0 5
  • 接口測試自動化的優(yōu)點: 1,web自動化說起來很多人都會直接想到UI自動化這個設計,很少有人直接第一個概念是接口自...
    路邊看雪的小男孩閱讀 5,067評論 1 26

友情鏈接更多精彩內(nèi)容