2
$\begingroup$

I found that post intressting: Is there any way to replace an object? But I wonder if if it is possible to keep the size? (not scale) of exchanged objects? Or maybe change dimmensions to scale (reset dimmensions to 1x1x1 value and keep sizing by changing scale with simple math - moving value to scale field). Than my problem will be solved, but I have no idea how to do it. Anyone could help?

What I really need: Exemple: I imported 1000 objects (as cylinders) that represents trees - height of a cylinder is a height of a tree, and XY is the crown diameter. I'd like to exchange these cylinders to a LowPoly tree model keeping XY-Z sizes. I know it may strech my input tree a little but I can accept it...

Is there a way to do that? Will be glad for suggestion.

$\endgroup$

1 Answer 1

3
$\begingroup$

My best try is 3 steps.
Replacing a cube with Suzanne, keeping exact dimensions.

  1. Link Object Data (Ctrl + L > Object Data)
  2. Copy dimensions of the Cube to one Suzanne (it gets slightly distorted)
  3. Select all other monkeys, and copy object scale to them (RMB > Copy all to selected)

Linking Object Data, nothing new here. enter image description here

Copy exact dimensions from Cube to Suzanne. And then copy the scale to the rest.
enter image description here

$\endgroup$
7
  • $\begingroup$ Hi, your solution looks well for a small amount of objects. For me - the main problem is that we are talking about ca. 5000 individuals. $\endgroup$
    – JakubPelka
    Commented Jul 29, 2020 at 7:48
  • $\begingroup$ Well, it should work the same no matter the object count. Are you running into any issues? :) $\endgroup$ Commented Jul 29, 2020 at 8:17
  • $\begingroup$ I am now having custom properties with Z - height value for every object, and R- radius value for every object. I am thinking about creating custom script for transform.resize, but have no idea how to access data from custop properties tab. bpy.ops.transform.scale(value=(R,R,Z), orient type='GLOBAL' etc .... I attach my blend file to show the project (part of it) drive.google.com/file/d/14YYIZERVTDGy6ghfRVYXh6gvjtctI7or/… $\endgroup$
    – JakubPelka
    Commented Jul 29, 2020 at 8:32
  • $\begingroup$ Right :). Please post this as a new question (you can link this one to provide context). There are many experts on scripting on this site, and they'll surely help :). $\endgroup$ Commented Jul 29, 2020 at 8:38
  • 1
    $\begingroup$ new branch over here: blender.stackexchange.com/questions/188193/… $\endgroup$
    – JakubPelka
    Commented Jul 29, 2020 at 9:09

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .