Geometry Child/Parent inherit.. vector problem

I run into a problem to get the vector math correct.
I basically have to items, one is the geocode and one a parent object, where I have to rig the position of an object inside the geo node too.
Basically this works, except on rotation of the geo node.
Then I have some problem getting the center and vector right.

I guess its pretty simple if you are more in depth to vectors, its just that I can’t get my mind into it right now.

Here is the sample: sample.blend (131.9 KB)

Note that its only about position. The rotation would be simple to get. So the child should act link parented to the target object.

i am not totally sure what you want, but with this node setup:

you will get this:

copy rot + loc with gn

1 Like

I want to move the geometry node objet too, ans rotate it,

I have a feeling that you’re trying to do things in the most difficult way possible.

Why not apply object transforms on Child, and then join as untransformed, original geometry?

If you also need a Child-like object with unapplied transforms, why not instance Child onto a new object with any transforms you want?

This seems like a case where your eventual use case is hidden by using such an abstract example, and where it would probably be important to know what that eventual use actually was.

2 Likes

No, i am not trying things to do the most difficult way possible, i just try to help the way i can. And that’s a way i know. That’s all.
And i have no idea what the actual use case was…but for sure my answer wasn’t that, what the OP wanted, as you can see in his answer. But you are free to provide a much better answer than mine to make the OP happy :wink:

I’m sorry, I hit reply to the wrong post. I was addressing what I wrote to RobertLe.

1 Like

ah ok, thanks for clarifying :wink:

Well, its just part of a more complex thing. The main goal is to apply this setup to many objects. The traditional style if working had other draw backs and was very time consuming.
I’m very close. Its just the rotation of the geometry node owning object that I can’t get right.

I created a simpler setup.
It works in once case, you only can rotate the geo-node object in ONE axis.
So if you select the purple box in the center and rotate it in one axis only, no matter which. It works like it should. Would be fine that way.
However as soon as two axis get rotated the child box just starts to rotate too… unknown center.
I have not idea how to fix that.
sample2.blend (129.2 KB)

If I rotate the Purple box nothing happens.

Nothing should happen, because the child should stay with target.
However if you rotate more the one axis, something happens.

I do not understand what you are trying to do. Can you explain in other words?

Basically its a rig. The child should be absolut and only follow the large object (before placed above). It is part of the geometry node, but it shouldn’t be affect by anything else then the target.

Its just an element of a setup, but the whole setup is more complex so I made it simpler.

It is still unclear. You introduced a couple of new terms like “large object” but fail to explain what exactly the behavior of each object is supposed to be and in which relation they should be to each other.

No idea what you’re asking…

It may help if you draw a sketch explaining what you want. Also may help to explain the use-case.

Good luck.

Hi, I think for a meaningful answer you should explain exactly what you’re working on (is it a spaceship? an arm?), what every part involved should be doing, what it’s doing instead, bit like a bug report. Hopefully with captures as well.

If you’re trying to replicate a parenting behaviour in geonodes it’s not possible right now, you would need matrix operations for anything related to that. The exception being when the two objects are at the same location, then it’ll work.

1 Like

I actually run out of words here. Its simple
There are two geometrys
One with geometry node
And on which is used as target,
I want to use the position of the target in the geometry node, no matter where both objects are.
So, I can get the position of the target, but when I want to add an offset vector to that traget object, the vector always drives off, when I use more the one rotation axis in the source objects.

  • Object A is called “GN” and has a GeoNodes Modifier
  • Object B is called “target” and has no GeoNodes Modifer
  • When “target” is moved then “GN” should move to where “target” is

Is this correct?

First off is this to displace geometry? or ‘just’ orient an instance/instances in a certain direction? you could consider moving some of your setup to real objects and use constraints on them, if there aren’t too many. You’d have complete control over that kid of stuff.

The explanation was better. When you say an offset vector, what is it ? in node form, where do you get that offset?
Geonodes are evaluated in object space, so you’d have to compensate for arbitrary deformations given to the modified object and that requires matrix math afaik.

GN can move everywhere, same like T.
Both will be parented later to other objects.
But, the GN geometry node should always know where T is,
So far the simple stuff,
Now the tricky stuff,
I need to calculate the position of a virtual point, called child, that is an offset to T position.

This works all, except GN is rotated in more the one axis. Somehow must have to do with the euler rotation.