Added Paste2Xaml application and Ab2d.ReaderWmf class library

by abenedik 23. August 2007 16:20

Paste2Xaml is a WPF application that can read Windows metafiles (wmf), Enhanced Metafiles (emf) or get matafile objects from clipboard and can convert it into xaml. It can also export embedded images that can be used in exported xaml. The metafiles can also be imported at runtime with new Ab2d.ReaderWmf library.

The following diagram shows how it is possible to import 2D vector drawing from almost any drawing application into WPF world:

Ab2d Overview diagram

Paset2Xaml Screenshots:

Main Paste2Xaml window

Main Paste2Xaml window - a graph from Microsoft Excel 2003 has been pasted to the application (the application is already showing a WPF representation of the graph)

Export Dialog

Export Dialog - showing the xaml text and all the export options for a metafile with 2 embedded images.

The graph from Microsoft Excel 2003 shown in XamlPad

The graph from Microsoft Excel 2003 shown in XamlPad.

See for more.

Tags: , , ,


New ViewerSvg - SVG to XAML converter application available

by abenedik 26. July 2007 00:00

ViewerSvg is a svg to xaml converter application. It is using the Ab2d.ReaderSvg library that imports objects from svg file into WPF.

Tags: , ,


New version of ReaderSvg and ViewerSvg published.

by abenedik 9. July 2007 00:47

ReaderSvg has now improved text support. In previous version all text were converted to paths. This made simpel svg files with text very complex in WPF. In new version text that do not have some special stroke or fill is converted into simple TextBlock. There is also a new property UseSimpleText that can forec conveting text into TextBlock even if text has some special storke or fill. The svg reading is also imporved.

ViewerSvg has also been slights improved.

See for more.

Tags: , ,


New version of Reader3ds and new RobotArm Sample 3D application available

by abenedik 11. May 2007 00:45

Version Reader3ds 4.1 is finally published.

The most important new feature is that the new Reader3ds is capable of reading objects hierarchy. That means that for example if in a 3D body objects we rotate the head, the eyes and nose will be rotated accordingly. This really enables great manipulations with 3D objects. To make this even simpler a Transformer3ds class has been added to the Ab3d namespace. This class contains methods that make transforming of 3D objects really very simple. For example the following line of code rotates of object named as "Joint2" in RobotArm 3D scene for 45 degrees:

robotArmTransformer.RotateObject("Joint2", new AxisAngleRotation3D(new Vector3D(0, 0, 1), 45));

To demonstrate all those new features a new sample 3D application is available - RobotArm shows how simple is to create complex 3D transformations and animations.

And this is not all. With Sandbox I managed to create an online and offline help (chm file). The online help can be seen here. The chm help file is included in the package. This way using features in Reader3ds and Transformer3ds should be easier.

I hope you find this interesting - you are invited to visit the - see Reader3ds section.

Tags: , , ,


Design user interface of your WPF application in your favorite drawing application- with new ReaderSvg library

by abenedik 23. April 2007 22:12

Imagine the following:

1.) Draw the whole user interface or just some of its elements of your WPF application in your favorite vector drawing application like Adobe® Illustrator®, CorelDRAW®, Inkscape, etc.

2.) Save your drawing into svg file format.

3.) Import your svg file into your WPF application and use it just as any other WPF UIElement.


Simply by importing all elements from svg file into WPF application with Ab2d.ReaderSvg library.

Ab2d.ReaderSvg is a class library that can be used to read svg file and import its elements as WPF UIElements - Canvases, Paths and other shapes. Elements Stroke and Fill data are also imported. Read more about Ab2d.ReaderSvg features and usage on On the site there is also a ReaderSvg sample applications that shows how simple is to create great animated effects, scalable vector elements, triggers to some elements and more. The sample is available with full source code.

Push your applications to the next level - forget bitmaps - use vector elements. And use your favorite vector drawing application to achieve the best results.

Tags: , , ,


New version of MeshUtilities and new sample application published

by abenedik 13. January 2007 23:00

New version of MeshUtilities class library has been published. With the library it is possible to convert the existing 3D models into flat or gouraud shaded models. It can be also used to correct some anomalies on the 3D objects.

The following images show a model of a torus get from a 3D modeling application. The first image shows the original WPF rendering of the model read with Reader3ds library - the model does not look smooth (the reason for this is that some of the positions are duplicated - because of that WPF does not calculate the normals correctly). The second and the third images are showing the flat and gouraud shaded images that were get with using Ab3d.MeshUtilites after reading the 3ds file with Reader3ds.

To read more about how WPF shade the models read the following Charles Petzold's blog entry.

It is now possible to convert all the models in the Viewport3D or just some or them (one 3DModelGroups or one MeshGeometry3D). For example the whole Viewport3D is converted to flat shaded models with just one line:


There is also a new sample application that on one hand demonstrates how to use the new MeshUtilities and on the other shows how simple it is to read different 3ds files with the Reader3ds library. The sample application is available with full source code.


New version of Reader3ds support animation

by abenedik 29. December 2006 20:00

New version of Reader3ds is published. There are many new features and improvements. The new version more accurately reads complex 3ds files. The positions coordinates are now adjusted for the WPF coordinate system. Using the objects with their names that were defined in the modeling application is also simplified.

The biggest new feature is animation support. Now it is possible to get Model3DGroup for each frame. To demonstrate the new animation abilities there is also a sample Player3ds application with a sample animation.

To get more info and to download the new version see my wpf-graphics site.

Note: The Reader3ds version 3.9 will expire on 18th January 2006 so please update to new version.

Tags: , , ,