Hi all!
How can I scale a model so that its largest dimension is mapped between [0,1]?
Thanks!
Hi all!
How can I scale a model so that its largest dimension is mapped between [0,1]?
Thanks!
Use this to get a model’s dimensions:
min, max = model.getTightBounds()
dimensions = max - min
You can then use that to set the model’s scale, with a little math.
Thanks for the answer!
The code I used is the following:
minLimit, maxLimit = self.model.getTightBounds()
dimensions = Point3(maxLimit - minLimit)
compList = [dimensions.getX(), dimensions.getY(), dimensions.getZ()]
self.model.setScale(1 / max(compList))
Cheers!
Thank’s, I had similar needs (normalizing objects’ sizes) and this worked quite well
Also an interesting read, an iterative algorithm to find tight bounds but which can be stopped in the middle of the processing (may be interesting for a future implementation of getTightBounds() in Panda3D?):
books.google.fr/books?id=SkGcGUH … &q&f=false