Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.

First time visiting? Here are some places to start:
1. Looking for a certain topic? Check out the categories filter or use Search (upper right).
2. Need support? Ask a question to our Community Support category.
3. Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
4. Be respectful, on topic and if you see a problem, Flag it.

If you would like to contact our Community Manager personally, feel free to send a private message or an email.

# Constant plane via mate connector (FS)

Member, csevp Posts: 124 PRO
Hello,

How do I establish a plane using a mate connector, in a way that no matter how I orient the part, the directions will remain the same.
The plane will be used for a sketch and then extrude the sketch normal to the sketch region.

Thank you

• Moderator, Onshape Employees, Developers Posts: 212
edited July 2
Either:
1. Construct a mate connector from selections in the feature. You need a point for the origin and two directions orthogonal to each other.
2. Place a mate connector on the part being derived. If you move it after it is derived, you'd need to construct a query to transform the mate connector and the part.

Without explicit definition, you will be subjected to the right and left-handedness of edge direction (+Z direction) and implicit direction guesses when transformed in world space that will affect clocking (XY plane orientation about the Z).
Support & QA
• Member, csevp Posts: 124 PRO
The feature is creating new geometry in this case, so I assume opt 1 is preferable.
I can't figure out how to make a plane that is parallel to the Z normal direction. Only xy planes.

Thank you Jason.

• Member Posts: 109 PRO
would this work?

plane(coordsystem.origin, coordsystem.xAxis, yAxis(coordsystem));

//this would be normal to yaxis. swap the last two arguments to let the x axis be normal. either optionare parralel to Z.
• Moderator, Onshape Employees Posts: 5,541
It's not clear what you are trying to do? I don't follow Jason's comments either.

If you just want to convert a MC to a plane, use evPlane
Senior Director, Technical Services, EMEAI
• Member, csevp Posts: 124 PRO
Thank you @jelte_steur814, I'll definitely try this.

@NeilCooke- Using evPlan with the MC only works in one orientation. As soon as the parts move the whole thing is messed up.
I want it constant and robust at all orientations.

• Member, csevp Posts: 124 PRO
@jelte_steur814
can't get it normal to Z.
Tried both ways.

• Member, csevp Posts: 124 PRO
@jelte_steur814
I got it. zAxis...
Thank you!

Let's see if the rest works well.
• Member, csevp Posts: 124 PRO
How do I set a vector for a transform operation that is following the new coor' system?
So if I want to move 50mm only in the Y axis.

Thank you

• Member Posts: 109 PRO
i think something like this?

i didn't test any of this, but you get the gist I hope.

const direction = evAxis(yAxis).direction;
const translationVector = direction * (50 * millimeter);

• Member, csevp Posts: 124 PRO
It was close. Finally got it though.
Here's the solution:

var yDirection = yAxis(location2);

var line1 = line(location1, yDirection);
debug(context, line1, DebugColor.MAGENTA);

const translationVector = yDirection * secRowDis;
// debug(context, direction, DebugColor.RED);

opPattern(context, id + "patternC", {
"entities" : qCreatedBy(id + "boolean2", EntityType.FACE),
"transforms" : [transform(translationVector)],
"instanceNames" : ["secondraw"]
});

Thanks so much