|
|
Le 2022-02-01 à 01:34, Dave Blandston a écrit :
>
> This is mathematically correct and in my opinion the best/simplest solution if
> it works properly *but* might not produce the desired result artistically for
> each object. For example, picture a ballerina spinning with one arm
> outstretched. Her average center of rotation would probably be somewhere near
> her shoulder, so a more complex formula (or artistic judgment) is sometimes
> necessary. For these abstract shapes perhaps that will suffice, or perhaps it
> will look awkward. I would certainly try this method first and see how it looks.
> It will probably look great. I'm very curious to see because this is an
> interesting artistic question. If it doesn't look right then here's another
> possibility that I would try: Place each object in turn inside a vertical
> cylinder centered on the y axis. Use highly contrasting colors so you can easily
> see where the object extends outside the cylinder. You can also make the
> cylinder partially transparent. Adjust the radius of the cylinder and the x and
> z positions of the blob object until it "feels right."
>
> I'm looking forward to seeing where this leads!
>
> Kind regards,
> Dave Blandston
>
In the case that you mention, the solution would be to add some offset
when translating :
#declare Offset = Artistic_Adjustment_Value;
#declare Centre = (max_extent(Object) + min_extent(Object) ) / 2;
//This will find the opposing corners of the bounding box, then find
//their average. That average value is the centre of your object.
#declare Object = object{Object translate -Centre+Offset rotate
Some_Rotation translate Centre-Offset}
// This translate your object by minus the found value adjusted by
// the artistic offset, apply your rotation, then translate your
// object back to it's original location.
Post a reply to this message
|
|