**Video**is in real-time

Ability to render size-able number of dynamic objects could be one of many reasons contributing to the growing popularity of Processing/OF amongst code-savvy, experimental architects. Unfortunately, this ability is not coupled with easy-to-use geometric operations.(Potential integration with Java libraries notwithstanding i.e.) . Wonder then, if with the addition of python script and API to Maya, there might be a 'scripted' method to register openGL callbacks within Maya nodes /DG ? Thus leveraging drawing capacities of openGL and the geometric capacities Maya.

Images/video below: early attempts to add a preview shaded mode for Large object population in Maya. The inclusion on smooth-mesh preview since Maya2008 has already eased many a work-flow.

5 comments
| 0 trackbacks
| permalink
| ( 3.4 / 39 )

Saturday, September 27, 2008, 12:21 PM - Maya.c++.api., utilities, programming interests

Posted by Administrator

Posted by Administrator

Vector field: (from wikipedia)

is a construction in vector calculus which associates a vector to every point in a (locally) Euclidean space.

Streamlines: (from wikipedia)

are a family of curves that are instantaneously tangent to the (velocity) vector .(of the flow).

Custom Maya tool:

1. describes a set of input curves as a tangent vector field.

2. Computes streamlines.

ref:

Abdelkrim Mebarki. 2D Placement of Streamlines. In CGAL Editorial Board, editor, CGAL User and Reference Manual. 3.3 edition, 2007. [WWW] [bibtex-key = cgal:m-ps-07]

3. Uses the API to construct curves from output data of the computation.

Read More...

Image:David M. Mount and Sunil Arya;

Images from simplistic implementation of the Octree algorithm in Maya. Primarily as an exercise to understand its API and class derivation within it.

BSP

*"Binary space partitioning (BSP) is a method for recursively subdividing a space into convex sets by hyperplanes. This subdivision gives rise to a representation of the scene by means of a tree data structure known as a BSP tree."*

Wikipedia Accessed Aug 2007

Octree

*"An octree is a tree data structure in which each internal node has up to eight children. Octrees are most often used to partition a three dimensional space by recursively subdividing it into eight octants."*

wikipedia Accessed Aug 2007

Approximate Nearest Neighbour

*"Computing exact nearest neighbors in dimensions much higher than 8 seems to be a very difficult task. Few methods seem to be significantly better than a brute-force computation of all distances. However, it has been shown that by computing nearest neighbors approximately, it is possible to achieve significantly faster running times (on the order of 10's to 100's) often with a relatively small actual errors. ...."*

David M. Mount and Sunil Arya

Even accounting for the amateur nature of our attempt,

**it would appear**that the above holds true in 3 dimensions as well ie. an octree algorithm provides a significant advantage over brute calculation of distances only when the point distribution is sparse, point sets are large (above 50000) and some tolerances are allowed in terms of measurement.

Tuesday, January 15, 2008, 03:31 PM - Maya.c++.api., Maya Embedded Language, utilities, programming interests

Posted by Administrator

Posted by Administrator

**video**is in real-time

A quick screen grab from WIP.Shows a prototype 'node' for Maya that can take MEL inputs and produce openGL entities.

The in-built blind data editor(polyColorBlindData MEL command) provides a handy interface to visualize information embedded within a mesh. The attempt is to build a similar node that can visualize more generic blind-data. It is a simple wrapper around the easy access that the maya API provides to incorporate openGL in its view ports.

Currently it can take input surfaces and meshes, vector (point and color) arrays. Output modes are points, and lines. The intention is to support quads and line strings as well.

This might help some of our previous tools to work in interactive modes, by obviating the need to make 'intermediate geometry'. Standard uses could include visualizing surface curvature, 'input sites' on a surface, closest-fit planes, point clouds etc.

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