Hey all! Does anyone know how to find out the height, width, etc. of an actor? I'd be fine with the answer having to go through geometry or the mesh somehow. I just want to be able to get dimensions as well as position.
Thanks so very much for the information! I was thinking of box tracking, but I couldn't find any methods to get that information. Apparently I was foolishly looking in Actor, Figure, and Geometry when I should have been looking in the scene.Poser knows a bounding box for each actor in the scene: that's what you see when you set 'box tracking' mode. Unfortunately I can only find SceneBBox() in the Python methods which returns the bounding box of the whole scene, in inches. However you can also toggle individual actors to appear in the scene bounding box or not, using SetIncludeInBoundingBox(). I suppose you could iterate through the scene and toggle off everything except what you wanted to include... It hardly sounds easier than brute-forcing all geometry points, to be honest, but might turn out to be quicker for a high-poly mesh.
If you are talking about some sort of scattering tool - it will be good option for, say, garden generation. Real sizes will be needed both to avoid intersections (or have only measured intersections, can be useful too for nature scatter) and to plant objects on the plane/mesh/ground. There is no cheap algorithm for this - there are cheap algorithms for sorting, but in this case you can't escape iteration over every point — so algorithm price will be N reads + 3N comparsions + about 1.5N temporal assignments.
And Poser needs good scatter tool. "Send in the clones" is quite limited in comparsion to the UltraScatter for example.
Here's a VERY OLD set of scripts...
Wow! Thanks so much! I'm so glad to see you haven't left the Poser community. I've tried some stuff with the bounding box techniques, and it hasn't worked so far (the Scene results are the same no matter what I do to the individual actors), but maybe I missed something. If not... well, again, it's definitely a good practice for me to get to mess with big data.Here's a VERY OLD set of scripts that include at least one use of the bounding box technique. The ZIP includes a bunch of stuff, most of which is probably irrelevant.
LoaderLocate.py is the script that places things sort of randomly around the scene, without intersecting. I haven't used it in more recent Poser versions, but it should work. If it doesn't, let me know. If you want to talk more about it, let me know!
I'm no longer writing python stuff for release, so I have no problem at all with permissions or licensing. Just ask.
http://ockhamsbungalow.com/PPP/Loader.zip
On instancing: Poser does and doesn't support it. On the one hand, multiple instances loaded by hand or preset are handled efficiently. So if you, say, build a colosseum, it will be much more efficient as a series of repeating parts than as one whole mesh. Hence, for instance, the multiple parts of Aslan Court. That said, Poser doesn't allow multiple selection and has absolutely no tools for handling instances as a group. Even more importantly, as I'm struggling with now, it has no good way of handling hierarchies unless they're under one base figure. If you have a hierarchy of props _or_ have a hierarchy that includes more than one figure (a figure that's a descendant of another figure), then Poser treats each item like it's its own thing, regardless of its parentage. So additional tools are needed to allow you to change multiple instances at once.This idea makes me think of instancing. Poser probably doesn't support that AFAIK. Would be nice though. I have lots of fun working with Python in Poser. It's so easy. Sounds like it would be a good thing for you to build up a library of math functions, especially geometric ones. Then you could use them to support a lot of other features.
It isn't really necessary to rig a group of props to make it possible to animate parts, like a door. Just put the origin of the door in line with where you want it to hinge, limit the rotations and translations and parent the door to the door frame. Maybe add a master parameter to the parent. I do that sometimes, then sometimes I rig it. Don't even know why. Just whatever I feel like doing at the time.
My thought on this array business is that it's best to design the parts for the purpose. So it all looks just right when made into a composite whatever. Otherwise it's really hard to get the whole to look good. I've messed around with that sort of thing a lot. There's a prop set called 'Mod_Pods' on my website that does things kind of like you describe, which was designed for the purpose.
Actually, come to think of it, with all these hurricanes, the parts were originally designed as hurricane proof housing. Maybe I should add a history of that to my website.
My stuff is all free so you could download it and play with it just to see another idea of array architecture.
Ohhhh, sorry to hear about your loss.Well, and I've also been held up by our dog's health. She was having seizure problems most of last week. We'd been able to get her out of bad spots like that before, but by Saturday morning it had gotten so bad that she was having a seizure every few minutes, so frequently she couldn't walk. My husband had to carry her into the vet to put her to sleep. We tried everything we could, and she fought hard her whole life, but it was just too much. We miss her terribly. I haven't been able to get much of anything done since, but I'm trying to get back into coding now.
Oh, and yes, yes, and yes! A morph loader to load a bunch of morphs is one of the things I've been wanting for ages. Then if I can make or find a way to mass export shape keys from Blender, making morph sets will be a _breeze_.Thanks! I'll have a play with those in Poser 11 and let you know how it goes. Just from a quick skim through the documentation, I'm interested to see the morph loader which can apply several morph targets all at once. I could use that, and frequently; and I've seen forum posts from others asking for that facility, too.
Thanks so much for your kind words. Even though she lived so much longer than we expected (we always said we'd be lucky if she made it to 5 with her epilepsy problem), it still feels sudden. We'd been through times like that before with her, and she'd always managed to pull back from the brink. She was the most loving dog I ever had. When she wasn't having problems, she was joyous and full of life. It's so hard to deal with the quiet in the house now.Ohhhh, sorry to hear about your loss.![]()
geometry-relates stuff like matrixes and vectors are in numpy.linalg and scipy.spatial, scipy.linalg. Numpy included with Poser.I don't recall that Python has a Geometry library.