Page MenuHome

Distorted non-fit Cone on Bezier curve
Closed, ArchivedPublic

Description


Using the Alpha from today: Blender-2.92.0-1e8f2665916c-macOS.app

I tried every way to get cone to fit curve. It distorts horribly if the curve is not perfectly straight and flat. It will not fit further than about 2/3 the length of the curve. It doesn't work even with the cone's origin on them cone's bottom ... then remaining at the world origin.
On another project, I spent hours trying to get the outside of a section of ornate metal fence mesh to conform to a gentle curving bezier curve. I tried instancing but at the curve, the angle of each section rotates the normal so that sections don't face outwards.


It seems there needs to be other way. Perhaps if the origin could remain with the cone (on its bottom) and be either instanced or arrayed, it's rotation and shape could remain local to its mesh as it travels the curve and not distort or rotate.

Event Timeline

Paul Muns (dznwks) changed the task status from Needs Triage to Needs Information from Developers.Jan 4 2021, 8:57 PM
Paul Muns (dznwks) created this task.
Aaron Carlisle (Blendify) changed the task status from Needs Information from Developers to Needs Triage.Jan 5 2021, 6:41 PM
Aaron Carlisle (Blendify) changed the subtype of this task from "To Do" to "Report".
Falk David (filedescriptor) closed this task as Archived.EditedJan 6 2021, 10:42 AM

I can reproduce the issue, but this is not a bug. We can solve the issue with the following steps:

  1. Reset the transforms on the curve to 1.0
  2. Rest the rotation on the cone to 0.0
  3. Reset the radius on the curve handles to 1.0
  4. Now the cones are no longer deformed and only follow the curve

If you need help learning or using Blender, please post a question on one of our community websites, for instance Blender's StackExchange, blenderartists.org or the #support channel on Blender chat. The bug tracker is only for bug reports.

Closing.

BezierCurve.001 was scaled and rotated non-uniformly.
If you apply and/or reset scale/rotation on participating objects Object > Apply > Scale etc it seems to work as expected:


Regarding the fence [I have also seen that in your file] or the curve modifier in general:
this will always have distortion (it is deforming after all, there is no way around it)

What you could do is array a plane, curve deform that and instance to faces:
This way the individual fence parts are not distorted, but still align properly:


In any case, this does not seem to be a bug, will close (feel free to comment again though if issues persist)
In general: For help using Blender, please try one of the community websites: https://www.blender.org/community/

Thank you Falk and Philipp for the help on this. I have spent a month off and on trying different random bezier curves and meshes to try fitting and it seems the critical thing is to get the ORIGINS to both be at the World Origin to start. THEN each sizing or change needs to be APPLIED although not always--except that the Dimensions and Scale are tied together so that the Scale change from 1.0 means the change needs to be Applied. It is still a mystery sometimes how to get elements together. Down the road maybe more hand-holding controls to make it come and stay together .....

So here's a little thank you blend below.

Now I need to check on the suggestion for instancing the outer surface of the fence--sounds like a cool technique!

Last night I was thinking of how long I have been using Blender and NEVER knew about Apply. I tried looking to find out about when I needs to be used and there is nothing that as a User seems really clear-cut. As a programmer, I understand Commit and the need to reset the Origin, but from the outside User view, without knowing the coding, it is hard to really get a grasp on when it is vital to making something work right--like mesh on a path. I appreciate Falk's careful explanation of the steps needed but it also strikes me as the feeling I got from "Hitchhiker's Guide to the Galaxy" when we were told Earth was to be "cleared away" and that the notice was clearly posted on Rigel 4. IF you don't have the Item / Transform open while working with this operation, there is no clue that you are doing anything wrong, except it is frustratingly erratic.

SO, I was wondering if there was a way to automatically Apply mesh changes IF it is in a committed curve-fit operation? OR at least if the Apply pie bounced onto the screen, like a prompt, when it would logically be needed to complete the change.

@Paul Muns (dznwks) The bug tracker is not the place for general discussions and/or feedback. You can post your suggestion on https://devtalk.blender.org/ and have the discussion there.