EnglishFrenchGermanItalianPortugueseRussianSpanish
Home arrow Script Collection arrow CATIA V5/DMU Navigator-Programming with Python
CATIA V5/DMU Navigator-Programming with Python PDF Print E-mail

ImageIf you want to automate CATIA V5 or DMU Navigator with Python you need Pywin32 and Python for Windows or Activestates ActivePython for Windows. Python is free software and you can develop professional applications with all advantages of Python for CATIA V5 or DMU Navigator.

To develop a small application which interacts to CATIA V5 you only have to download your prefered Python Distribution for Windows and can start developing applications for CATIA V5 or DMU Navigator (this should be running when testing the application).

If you have done that you can test it with this source code:

 
import win32com.client
a = win32com.client.Dispatch('catia.application')
doc=a.ActiveDocument.Product
for i in range(doc.Products.Count):
    print 'Part Number:', doc.Products.Item(i+1).PartNumber

This small example prints out the part names of a loaded CATProduct.

DMU Navigator

If you want to automate DMU Navigator, you can use this dispatch string:

 
import win32com.client
# Following doesn`t work with CATIA V5 R16 and later
a = win32com.client.Dispatch('DMU.application')

Other examples can be found in the script collection.

Important notes

If you want to use early binding for the CATIA V5 object libraries you can use the Makepy utility from Pythonwin. After that every object and its methods will be usable from the pulldown menu while typing and you can have a performance advantage. You should use makepy for every object library which you want to use e.g. "ProductStructure Object Library" for working with CATProducts). But not for the "CATIA V5 Interfaces Objekt Library"!

If you do that every application which uses early binding for the "CATIA V5 Interfaces Objekt Library" will not work ! A workaround is not to use makepy for the "CATIA V5 Interfaces Objekt Library" or use explicit late binding "(import win32com.client.dynamic as the first line).

{mosgoogle}For starting developing applications with Python for CATIA V5 you should use the manual V5Automation.chm which you can find in the bin-directory of CATIA V5. You will see that you can develop Python applications in the same way like VB with the builtin VB editor.

If you have problems to access the COM Interface from CATIA V5 (eg. no object libraries from CATIA V5 in makepy) please check whether CATIA V5 was registrated as a COM server. If not you can do that with cnext.exe /regserver in the CATIA V5 bin-directory. Then everything should work well...

More on Microsofts Component Object Model (COM) and Python

More information for developing with Python for COM applications with Pywin32 you can find in this excellent book. A whole example Chapter about COM Programming with Python/Pywin32 can be found at O`Reilly.

cover
Python Programming on Win32
by Mark Hammond, Andy Robinson
ISBN: 1-56592-621-8
652 pages. January 2000.




Comments (1)
RSS comments
1. 25-01-2008 18:57
 
I need to download this book
Guest
 
This e-mail address is being protected from spam bots, you need JavaScript enabled to view it

Write Comment
  • Please keep the topic of messages relevant to the subject of the article.
  • Personal verbal attacks will be deleted.
  • Please don't use comments to plug your web site. Such material will be removed.
  • Just ensure to *Refresh* your browser for a new security code to be displayed prior to clicking on the 'Send' button.
  • Keep in mind that the above process only applies if you simply entered the wrong security code.
Name:
E-mail
Comment:

Code:* Code
I wish to be contacted by email regarding additional comments

Last Updated ( Thursday, 26 March 2009 )
 
< Prev   Next >

Post your scripts

If you have interesting scripts to share with the community, please post them to this site. Hint: For syntax highlighting and correct Python intendation place your code between html tags <pre> and </pre>.

Suggested

RSS category feeds

RSS site feeds

My prefered Python IDE

My prefered Python editor is Pyscripter from MMExperts. It is not only an editor. Pyscripter is a full Python IDE including (remote) debugging, a class browser, and all other nice helpers which a full featured IDE needs.

Do you have a script for me ?

Do you have an interesting Python script which does some really cool thing on Windows ? Please post them to this site. It`s very simple - simply copy&paste it to this form. No login is requiered.

Hint: For syntax highlighting and correct Python intendation place your code between html tags <pre> and </pre>.

My prefered web framework

My prefered web framework for developing web applications is Django. Django calls itself The web framework for perfectionists with deadlines. It is a really fast, scalable and (thanks Python) the sexiest web framework of the world.