It looks like you're using an ad blocker! I really need the income to keep this site running.
If you enjoy BlenderNation and you think it’s a valuable resource to the Blender community, please take a moment to read how you can support BlenderNation.

PantoGraph: The Vector Renderer


cube_array.pngThe pantograph was a special tool invented in the 1600's to copy diagrams. Today, with the advent of tools such as CAD, computer-based tools have become the norm for designing and drafting. But where does Blender fit into this? Simple. Blender user rocketship has created a new plugin renderer called PantoGraph which can render your models not to a typical image file, but as Scalable Vector Graphics.

When one renders to PantoGraph, it generates a sleek vector version of your model. Vectors are a special method of defining imagery which use shapes rather than pixels, and therefore can be scaled indefinitely without loss of quality. As you can imagine, this is an extremely useful feature when drawing diagrams and designs.

The latest version of Pantograph supports:

  • Hidden- line rendering
  • Solid colors (with- and without alpha) only
  • The ability to use simple closed, convex volumes to do a boolean “cut-away”
  • Control over lineweight and color for:
    • Silhouette
    • Crease
    • Mesh
    • Hidden lines
  • A simple GUI that allows the saving of pens and pen settings

rocketship has done his best to ensure that PantoGraph produces precise images which require very little in the way of post-processing. One of his inspirations was Edward Tufte's concept of "Smallest Effective Difference," and rocketship has tried to make PantoGraph produce a degree of useful subtlety which is not present in existing non-photorealistic (NPR) renderers. If you ever use Blender for architecture, or any other form of diagramming, consider giving PantoGraph a look. (To do post-processing on your new vector images, I highly recommend Inkscape, a terrific free SVG editor.)

PantoGraph v. 0.4 was just released, so this is the perfect time to check it out!


  1. So does it just trace the bitmap render (like the old flash render thing), or does it actually render as vector?

  2. It sounds like it renders out in Vecter, which obviously works as compared to the barfo results of tracing.

    Cool beans.

  3. Ok. This just looks cool. And as a child of the 80's I can see any number of uses for it. (Black Hole opening credits, here I come!)

  4. Thankyou very much for your hard work, Rocketship. I'm a bit scared to see what will happen to curved surfaces, but I'm going to give it a try!

    Is there a chance that you could talk to the Freestyle development team about sending your vectors to their NPR? Even if that idea sounds silly, they need some more encouragement.

  5. "PantoGraph which can render your models not to a typical image file, but as Scalable Vector Graphics." + "python-ming >= 0.3 (required only for output of SWF animations)" + "There are two ways to render an animation to an SWF Flash file."


    Ummmm.... where are some actual samples of SWF Output (somefile.swf), everything I see is bitmap (png)? Would be nice to see some sample SWF files as well as some SWF Animation as described. Did I miss/overlook where these sample can be found ?

    Great work by the way, I have posted here before concerning the need for SWF format from Blender and all the wonderful great things presently happening with Flash and 3D but never received any feedback. Is SWF output support something that is being considered by the Blender Foundation as a feature anytime in the future? Feedback? Just curious?

  6. Hi, thanks for the comments - now I know what it means to be "Blendernationed"!

    @FishB8, I'd love to add shading (I think that's what you mean), but all the implementations I've seen result in really huge vector files, which sort of defeats the purpose. I'm planning to add simple "toon" lighting/shadowing eventually.

    I just wanted to throw in a link to some discussion of installation on Windows platforms for the curious:

    Installation on Linux should be easy ;-)

    I'd love to get some bug reports, now...


  7. Maybe I'm been to basic but I think this will be great for mesh rendering. Will allow great control of the thickness of lines, an will let have very smooth results.

  8. Wow this has been a great week for vector art! First vector textures and now vector rendering!

    @John B: that animated swf seems very jerky, is it possible to fine tune the animation in Flash? Basically I mean adding smoother tweens? If so that would be awesome.

  9. @roofoo,
    Technically, its not tweening - its re-drawing the entire frame each time. Adjusting the framerate is possible via Blender's internal controls (F10) - the framerate for that test was 12fps.


  10. Nice thing!
    But blender crashes after starting the script at windows XP. I'm using blender 2.45 compiled for python 2.5.
    Is where I could find a 2.45 Blender binary for 2.4?
    vector rendering may be very useful to generate contend for laser shows with blender!

  11. anomalous_underdog on

    this is what I have been looking for (export blender curves as svg). thanks goes to rocketship!

  12. Hi Rocketship,

    Great script! Especially for technicians and architects :)

    Although I can try this through Ubuntu, has any body got this running on OS X? Your script should be incorporated and included with the main releases of Blender!



  13. This is very useful! Your gallery images look very much like some of the examples in Edward Tufte's book on information graphics. Animating them as SWF would be a step further in clarifying information. Thanks for all the hard work!

  14. Yay ... been wanting this for a while ..but too busy to attempt coding this(or anything else worth a ....)

    (kudos a first sight, criticism from a nobody later )

  15. The awesomeness! :)
    I wanted such a tool for a long time now! I even considered implementing one by my self in summer, but I'm sure it would have been a lot worse.

  16. I'm getting this:

    Compiled with Python version 2.5.1.
    Checking for installed Python... got it!
    Make sure Polygon is installed and properly compiled
    and linked for your installation of Python
    Traceback (most recent call last):
    File "", line 43, in
    File "/home/panzi/pantograph/", line 83, in
    NameError: name 'setTolerance' is not defined

  17. Great work!! The author says that Pantograph has not been
    tested on Windows yet, so I gave it a try. Result: It works!
    To get Pantograph worked on Windows, I had to carefully combine
    the versions of the GTK+ runtime libraries and Python extensions.
    Here is the list of software packages I have used:

    gimp-2.4.4-i686-setup.exe from

    pygobject-2.14.1-1.win32-py2.5.exe, and
    pycairo-1.4.12-1.win32-py2.5.exe from

    The GIMP is used as the GTK+ 2.12.5 runtime. This package
    seems to contain GTK+ 2.12, Glib 2.14 (which contains
    libgobject) and Cairo 1.4. The last three are the required
    Python extensions that correspond to the libraries in the GTK+
    runtime. I hope this helps.

  18. Eligio Zavala on

    Looks great. Has anyone used it on MacOS? I've been trying but can't seem to get the different packages loaded polygon, ming, etc.

  19. The outputs are great! But making Panthograph work if far too hard... I don't get it (I'm using windows).

  20. I think somehow some people sneaked into my head, looked for things that I would need, and then started making them. This + the SVG textures are two projects that I will follow with extreme interest. Freaking awesome.

  21. @TK, Fantastic! Were you able to export SVG? The problem that I ran into on WIN32 was that the Cairo lib I had was older than the SVG export feature.

    @Rich, I've been trying to figure out how to use vector textures - it would definitely be be a great feature! I need to get the 2d clipping a lot more memory-efficient, though.


  22. @rocketship, Yes, PantoGraph's SVG exporter works perfectly
    as well as PDF and SWF exporters. The GTK+ 2.12.5 runtime in
    GIMP 2.4.4 for Windows seems to contain Cairo 1.4.14 (according
    to "strings libcairo-2.dll | grep 1\."), which is the latest
    API-stable version of Cairo. Pycairo 1.4.12 is for Cairo 1.4.12
    or any later version, so I believe I have a correct combination
    of versions. Correct version matching seems a key issue in
    using PantoGraph on Windows.

  23. @mzungu,
    I'm not sure if tweening is actually in the SWF file - isn't it mostly just an animation technique in Flash? The movie is still only playing at 12fps - I don't think its making any frames in between. I could be wrong...

    I just started working with Ming - it might be possible...

    Do you have any interest in writing up a short paragraph how-to on installing in Windows? You could send it to me at the blog...


  24. @rocketship,
    I started writing a how-to tutorial on installing PantoGraph on
    Windows. It will take a few more days. Since AFAIK the Polygon
    module and Ming's Python binding have no official Windows installers
    on the Web, I have prepared unofficial ones (those for Python 2.5)
    together with the tutorial. What do you think is the best way to
    put the tutorial and supplementary installers online? I have my own
    Web space, so uploading to there can be considered as a last resort.

  25. T.K. -
    This is fantastic! I can host the installers if you need, and/or the tutorial - I'll definitely put a link to it up. Thanks for your work!


  26. A. David Guzman on

    I think this is not only a great idea but a badly needed one. This plug-in does much more for Blender than what you think at first. To begin with, output to SVG is something that many people will need and if later on this could be converted to Flash it might be even better but remember that SVG is also an animated vector standard. What happens is that I don't think that there is yet an application that does the standard as much justice as other applications do for the Flash format.

    In addition to that I think the plug-in does other important things that could benefit other sectors like architecture. Even tough Blender is not exactly a CAD program people are starting to use it for architectural purposes and there is a lot of talk about this lately. I don't know how much control you have over the edges of your plug-in but being able to render the edges you want with the thickness you want is an important capability because it augments the edge feature that Blender has internally much, much more. In architecture or product design and visualization this could yield very decent illustrations. If you want to see better what I'm talking about take a look at the Illustrate plug-in for 3D Studio. Take a look at this addresses:

    Check out this gallery (the blue links atop the page) especially the Technical Illustration and Architecture but check all you want anyway:

    See the potential that Pantograph could have if developed well? This Pantograph plug-in is the closest thing to Illustrate that I've seen so far for Blender. I'm not saying that it should be developed as far as Illustrate because I now that is not easy to compete with commercial applications but it might be develop enough to be put to really good use! This with proper application could create some very, very powerful and professional Illustrations. This enters the area of non-photo realistic rendering giving Blender users new capabilities of this type and if you know what you are doing (I think you can overlay or mix these edges over other type of renderings like the Illustrate examples even if you had to do it by manual post-processing or with some sort of batch post-processing ) the photo realistic or shaded renderings can be combined with edges of this type to create some very nifty and powerful images and it could also be very useful to give cartoon shading (in combination) better edges with much better control of the lines than again what is possible with the internal Blender edge renderer.

    I have not been able to use it because I haven't seen anybody write a tutorial of how to configure it for Windows and I don't have the time at the moment to play with it until I figure it out but from what I've seen this could be very powerful and I think it should be developed seriously. About the curves been too square I'm not sure (like I said I have not been able to use it yet) but I think that that depends on your polygonal resolution and some more experience modelers might overcome this by creating higher resolutions meshes and that may not be so good for animation (even tough I've seen pretty high polygonal resolution animations) it might be very good for technical Illustrations. I think this thing has a lot of potential.

  27. ADG,
    Thanks for the pitch! Actually, combining the output of Pantograph with that of the internal renderer is a planned feature - it shouldn't be too hard. I've been aware of the Illustrate plug-in for a while - I've never tried it, because its limited to the Windows platform and a 3d package which I don't use. I began the project partly out of frustration with the lack of Linux-native vector renderers (Maya's, for example, is Windows-only).

    I'm hoping to make Pantograph easier to install and use - I would love to eventually get feedback from people about how they would like to use it! Version 0.5 will have a native Blender GUI, which should be a big help (and will mean one less dependency to install).


  28. OMG! This is awesome, I've been wanting this for so long and all of the other options are dead ends these days... Please continue! I'm especially interested in the SWF output, because I'm a flash game designer. Blender's character animation + swf output would really make my day! :3

Leave A Reply

To add a profile picture to your message, register your email address with To protect your email address, create an account on BlenderNation and log in when posting a message.