23 comments
( 162 views )
| 0 trackbacks
| permalink
| ( 3.1 / 2045 )

Sunday, October 11, 2009, 10:52 AM - Maya.c++.api., Maya.general.modelling, Geometry, Differentiation, algorithms

Posted by Administrator

Posted by Administrator

Sunday, July 12, 2009, 11:08 AM - Maya.c++.api., programming interests, algorithms

Posted by Administrator

Posted by Administrator

Its a bit dissappointing that the Nucleus solver (nCloth / nParticles) in Maya09 has very limited API access and thus I have trying to learn the anatomy of a solver - particles , springs, methods of integration et al - and these are very good references with source code:

memo : uses verlet integration

Traer : Runge kutte and Euler integration

toxi: verlet

Zach lieberman: Introduction to basic principles and hardware connections.

Many thanks to the good people who have give out source code!

**update on minimal spanning trees**videos are in real-time.

use of BOOST c++ template graph libraries within Maya plug-in, towards computing the euclidean minimal spanning tree of a set of points.The boost libraries implements both the Prim and Kruskal algorithm to compute the tree. Further, variation of the implementation is available as the Dijkstra shortest route algorithm

The lower video shows amateur attempts at implementing the algorithm using in c++ (left), in MEL (left) and a hybrid (middle).

The intention was always to achieve real time interaction, for the algorithm is useful towards path/route finding , calculating walking distances in a street network a la google maps etc. Evidently, none of the hack attempts were close to being real-time as opposed using the BOOST implementation that enables this.

Boost also includes other handy implementations to deal with graphs, and trees,statistical distributions et al.

Saturday, October 4, 2008, 12:10 PM - Maya.c++.api., Analytical, Geometry, algorithms

Posted by Administrator

Posted by Administrator

**Images_01:**

Example Iso-surface from a CFD data. Using VTK within Maya.

**Images_02:**

Comparing the powerCrust surfaceReconstruction algorithm (cs.utexas) with marching-Cubes based reconstruction.

Data used : pointCloud from radioHead video_ house of cards.

Special thanks to Tim Hutton,of UCL for the VTK port of the algorithm.

Maya has, in the previous years , served an useful role in the production pipeline of many a team at AADRL, as also here in our office. Evidently, it not being a CAD application by purpose, presents its hurdles. It has however, proven sufficiently amenable towards extending/customising its capacities through,

Scripting (MEL and python)

Interfacing with command-line applications (qhull,isosurf, tetgen etc).

Making custom plug-ins (C++ and python) .

Incorporating external and openSource libraries/APIs ( CGAL,VTK, openNURBS )

Images here represent recent efforts to integrate Visualization ToolKit(C++ class library, and interpreted interface layers for Tcl/Tk, Java, and Python).

Thanks to Remik Ziemlinski for example source code related to converting internal VTK data representations to Maya representations.

See here for similar efforts to integrate blender and VTK.

See here for vtk-autocad and vtk-solidworks conversion plug-ins.

See here for vtk-inventor integration.

VTK is an extensive class library with a plethora of core graphic/geometric algorithms including Principal Component Ananlysis, tensor and vector feild visualizations, CFD, FEM visualizations etc.

A rudimentary but working pipeline between Maya and VTK, means I will be like a kid in a candy shop for a while to come!

Other open-source code libraries.(viva la open source!)

openDX

*full-featured software package for the visualization of scientific, engineering and analytical data*.Formerly of SGI.

openInventor:

*is an object-oriented 3D toolkit offering a comprehensive solution to interactive graphics programming problems.*Formerly of IBM.

Using vtk classes to add iso-surfacing capacity to Maya.

Read More...

Wednesday, September 17, 2008, 04:13 PM - Maya.c++.api., Maya Embedded Language, algorithms

Posted by Administrator

Attempting to combine interests in 3 areas: vennDiagrams,pacMan and 'Greebling'.Posted by Administrator

Definitions from wikipedia:

Greebling : : algorithmically adding detail.

A greeble or nurnie is a small piece of detailing added to break up the surface of an object to add visual interest to a surface or object, particularly in movie special effects.

PacMan:

is an arcade game developed by Namco and licensed for distribution in the U.S. by Midway, first released in Japan on May 22, 1980.

Venn diagrams:

or set diagrams are diagrams that show all hypothetically possible logical relations between a finite collection of sets (groups of things). Venn diagrams were invented around 1880 by John Venn. They are used in many fields, including set theory, probability, logic, statistics, and computer science.

Read More...

**video**is in real-time

Shows a visualisation (of the data-set) of the force field around a Maya 'fluid' simulation.

A free player from tradebit.com

It is a well-known fact that the 'fluid' simulation yields a gradient numeric data-set that can be used to parametrically drive other geometric, and/or organizational systems.

In a bid to further research of fluid-fields and its use within parametric 'design' systems, we attempted to extract more data from the simulation. Here a 'fluidNode' (a simple wrapper to API methods) is being used to visualize/extract data related to the force exerted by a 'fluid' on point-objects within it.

Videos and images relate to how this might be applied to 'differentiate' and/or generate geometry.

A free player from tradebit.com

A free player from tradebit.com

**| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |**