Python: Difference between revisions

From Vectorworks Developer
Jump to navigation Jump to search
(Added a list of some good IDE's.)
(Added remark around exact python version.)
 
(9 intermediate revisions by 4 users not shown)
Line 16: Line 16:


Vectorworks uses Python 3 language. This is very important when learning about the language and when writing code.
Vectorworks uses Python 3 language. This is very important when learning about the language and when writing code.
! Vectorworks uses Python 3.3 at the moment, which is for VW2015. Keep this in mind, as python adds new stuff in minor releases like enums in 3.4.


== How to start with Python ==
== How to start with Python ==
Line 22: Line 24:


The fastest way to learn the language is to read through Python Tutorial pages: http://docs.python.org/3/tutorial/
The fastest way to learn the language is to read through Python Tutorial pages: http://docs.python.org/3/tutorial/
A very good guide at writing good code and perform common tasks can be found at [http://docs.python-guide.org/en/latest/ The Hitchhiker’s Guide to Python!]


== Python 3 and Vectorworks ==
== Python 3 and Vectorworks ==
Line 50: Line 54:
* Sample 2D path object: [[Python Sample 2D Path Object]]
* Sample 2D path object: [[Python Sample 2D Path Object]]
* An object that display an image from the web: [[Python Sample WebLinkImage]]
* An object that display an image from the web: [[Python Sample WebLinkImage]]
* Sample of a menu and two objects: [[Python Sample Menu with Two Objects]]
* Sample that imports a folder of .png images as symbols: [[Python Sample Import Images as Symbols]]
* Sample scripts to elevation information of VW objects: [[Python sample to Import elevation]]


== IDE and Debugging Python Scripts ==
== IDE and Debugging Python Scripts ==
Line 60: Line 67:


List of some good IDE's:
List of some good IDE's:
* [http://www.aptana.com/ Aptana Studio] (Free)
* [http://www.aptana.com/products/studio3/download.html Aptana Studio 3] (Free)
* [http://www.jetbrains.com/pycharm/ PyCharm] (Free community edition, Paid full version)
* [http://www.jetbrains.com/pycharm/ PyCharm] (Free community edition, Paid full version)
== See Also ==
* [[Vectorworks Scripting#Common Tasks|Scripting Common Tasks]]
* [[Vectorworks Scripting#Installing Scripts|Installing Scripts]]
* [https://wiki.python.org/moin/BeginnersGuide/NonProgrammers List of Python tutorials for non-programmers]
* [https://wiki.python.org/moin/BeginnersGuide/Programmers List of Python tutorials for programmers]


== Notes ==
== Notes ==


<references />
<references />

Latest revision as of 19:19, 20 July 2015

.Python|Python ..VS:Function Reference|Function Reference ..VS:Function_Reference_Appendix|Appendix ..Python Debugging|Debugging with Python

What is Python

Python is a programming language that lets you work more quickly and integrate your systems more effectively. You can learn to use Python and see almost immediate gains in productivity and lower maintenance costs.[1]

Also, here is the article about Python in wikipedia: http://en.wikipedia.org/wiki/Python_(programming_language)

More about Python can be found on the http://www.python.org/ website.

Python Version

Python has two public versions Python 2.7 and Python 3.x.

Vectorworks uses Python 3 language. This is very important when learning about the language and when writing code.

! Vectorworks uses Python 3.3 at the moment, which is for VW2015. Keep this in mind, as python adds new stuff in minor releases like enums in 3.4.

How to start with Python

First of all you must learn the Python 3 language. The best place to start is the Python documentation page(http://www.python.org/doc/).

The fastest way to learn the language is to read through Python Tutorial pages: http://docs.python.org/3/tutorial/

A very good guide at writing good code and perform common tasks can be found at The Hitchhiker’s Guide to Python!

Python 3 and Vectorworks

Scripting in Vectorworks with Python is very similar to the way VectorScript works in the software. All the existing APIs are available in the Python scripts inside the 'vs' namespace. Of course, all of the power of the Python engine is available, so that Python style type inference, classes, iterators, libraries, dictionaries, modules, packages sequence types like lists, tuples and ranges are available in the Vectorworks environment.

To get started, here is a simple script in Python that displays an alert dialog looks like this:

  1. Right-click on the resource browser and create a new script
  2. Choose language for the script to be 'Python'
  3. Type the script

When executed with a double-click on the script label in the resource browser, the alert dialog will be displayed.

Python API

Full functional reference to the Python Vectorworks API can be found on this page VS:Function_Reference.

Samples

These are some introductory samples that demonstrate plug-ins for Vectorworks written in Python. They are with increasing difficulty and demonstrate different aspects in the plug-in development under Vectorworks:

IDE and Debugging Python Scripts

Often users would use external IDE to edit the Python scripts that Vectorworks executes. Modern IDEs provide intelli-sense information (information about the semantics of the code while typing). To help intelli-sense for Vectorworks Python script APIs, you can point your IDE to the file File:Vs.zip (download, unzip, and place it appropriately so the IDE could find it). This way the IDE will know all Vectorworks Python functions and it would provide some information on the parameters and the behavior of the function. Note that those functions are empty and will not do anything if executed.

It is possible to debug Python scripts in Vectorworks using a third-party application.

See Python Debugging for more information.

List of some good IDE's:

See Also

Notes

  1. As described on the Python official website: http://www.python.org