Forum: Poser Python Scripting


Subject: Moving morphs between different figures

Cage opened this issue on Dec 20, 2006 · 1232 posts


Cage posted Fri, 22 December 2006 at 8:20 PM

Here's an update.  The overall results are still the same, but mesh comparisons are running much faster.  I wasw running 20-25 minutes to compare V1 and V3.  Now it ranges between 4 and 7 minutes, depending on the options selected.

I have implemented x-mirroring for centered actors (no symmetry check is run, so this may not work on asymmetrical meshes) and svdl's 'crude octree' method, as well.  My crude octree is probably even more crude than he envisioned, but it seems to work.

The new options split mesh analysis from morph creation and also allow user specification of the number of 'octree' subdivisions and whether to use a merged bounding box for both actors, or separate boxes.  I'm getting the best results with a single box and subdivisions set to 2.

JoePublic, that looks a lot like what I've seen with inner mouth geometries, so far.  I hope one of my ideas can help screen against that outcome.  Crossing my fingers.

Angelouscuitry, you can get the vert counts by writing a short Python script to check the NumVerts() of an actor's Geometry().  A loop through all actors would probably be the way to get the full count.  I'll see if I can add something to display vert counts.

The GUI is confusing?  Sorry.  I have a terrible time with GUI layouts.  But here's the process:

-In the first listbox (far left) select the source figure, then the target figure.
-Second listbox will display actors in the source figure.  Currently this isn't checking to verify that the actor also exists in the target, but I should probably add that.
-Select the common actor to use in both source and target.
-Third listbox will display all morphs in the source figure's selected actor.  
-Select on of the morphs in the third listbox.  This is the morph we will copy to the target figure.
-Select bounding box options.
-Click 'Analyse' to run the mesh analyses OR click 'Run' to copy the selected morph.  If Run is selected when there is no datafile existing, you will be asked whether you want to go ahead and run the analysis.
-Processing now displays the length of time taken by the run once it's done. 

*"I'm trying the former method now, on my faster PC.  I got a Python dialog straight off, but it does'nt say anything.  I'm taking this as not a complaint/error, and will let this run for another 10-15 minutes!"

*I don't understand what you're asking.  :(  Can you clarify?

Let me know if this new version causes any problems.  Timing results have been oddly inconsistent, and I have seen one bad morph result, for unknown reasons.  Generally, however, it gives the same results as the original, much more quickly.

===========================sigline======================================================

Cage can be an opinionated jerk who posts without thinking.  He apologizes for this.  He's honestly not trying to be a turkeyhead.

Cage had some freebies, compatible with Poser 11 and below.  His Python scripts were saved at archive.org, along with the rest of the Morphography site, where they were hosted.