Notifications
Clear all

[Closed] Please, help with Bobo workflow

1.How to draw a vector
2.wich geometry i have to use taht can follow x,y or z axis
3.the script he uses for this tutorial
thanks in advance

14 Replies

big thanks here!

You’d have to ask more clearly to get an answer, try to put together all the information we might need to answer without taking wild guesses. This is beneficial for both sides, you get the answer you wanted, not some random guesses (if any at all) and we know what your problem is and how to point you to a solution. To show you what I’m talking about, the guesses now would be:

  1. Anything will do, use point and origin, a line, whatever suits your needs. If you mean how Bobo did it in the picture, most probably there are few cylinders, cones and spheres.

  2. Well, I have no idea what you are asking about here. Any geometry will do and there are numerous ways how to constraint its motion depending on how you are going to use it.

  3. I don’t know what tutorial that is, if it’s from some subscription training videos, the scripts might be included.

ok,sorry!here is an image to try explain my problem

1 Reply
(@denist)
Joined: 11 months ago

Posts: 0

i’m absolutely sure that your question is very simple but i can’t understand it either.
do you want to rotate some matrix (coordinate system, node’s transform) and keep an axis direction where it is?

I think I know what you might want, although it has more of an educational aspect to it than practical application

(
	--objects
	local cylX = Cylinder radius:5 dir:x_axis wirecolor:red
	local cylY = Cylinder radius:5 dir:y_axis wirecolor:green
	local cylZ = Cylinder radius:5 dir:z_axis wirecolor:blue
	local arrX = Cone name:"X" dir:x_axis pos:(x_axis * 100) wirecolor:red
	local arrY = Cone name:"Y" dir:y_axis pos:(y_axis * 100) wirecolor:green
	local arrZ = Cone name:"Z" dir:z_axis pos:(z_axis * 100) wirecolor:blue
	local spot = Point name:"SpotHelper" size:10 isHidden:true
	local cylSpot = Cylinder radius:5 target:spot
	in spot local arrSpot = Cone name:"Spot" 

	--lock flags
	local POS_X = 1, POS_Y = 2, POS_Z = 3
	setTransformLockFlags #(arrX, arrY, arrZ) #{POS_X, POS_Y}

	--height controllers
	cylX.height.controller = arrX[#transform][#position][#x_position].controller
	cylY.height.controller = arrY[#transform][#position][#y_position].controller
	cylZ.height.controller = arrZ[#transform][#position][#z_position].controller

	local cylSpotHeight = float_script()
	cylSpotHeight.addTarget #pos spot[#transform][#position]
	cylSpotHeight.setExpression "-length pos"
	cylSpot.height.controller = cylSpotHeight

	--spot position controller
	local spotPos = position_script()
	spotPos.addTarget #x_pos arrX[#transform][#position]
	spotPos.addTarget #y_pos arrY[#transform][#position]
	spotPos.addTarget #z_pos arrZ[#transform][#position]
	spotPos.setExpression "x_pos + y_pos + z_pos"
	spot.position.controller = spotPos

	--spot arrow orientation
	local spotDir = LookAt_Constraint target_axis:2 target_axisFlip:true
	spotDir.appendTarget cylSpot 100
	arrSpot.rotation.controller = spotDir
)

Rather than macroscripts, you should look at (scripted) controllers, parameter wiring and all that stuff. After executing the piece of code above, move the cones and… just dissect the script, consult MAXScript reference and try to make something cool

hope this image help me to explain…apologize about my english
pd:yes!! your are totally right,i want it for educational purpose(i want ilustrated my kids about this fundamental concept!!!)thanks very much.

Thanks a lot!
worked!

is there a way to made a rollout where i can input values and show the results?
btw:many thanks is a huge help! a excuse for take your time.

thanks Swordslayer . i am learning a lot from your scrip! can you suggest some link/books/guide to specific learn about controller?
thanks very much

i replace the geosphere with a cone but i dont know how to cone follow the cylinder aligned.
thanks in advance

Page 1 / 2