PCStudio - How do you swing your doors?

I'm trying to do something similar to the 3d door swing which comes with the delivered paz's. I don't seem to be able to hold my mouth right in order to re-create the effect. I know it must have something to do with the directional or planar constraint to a Path2d as well as the positioner setting for the component. But this one boggles me. Can anyone tell me how Bentley did it? I'm attaching the portion of a ABD door which has the 3D opening angle constraint as an example of what I'm trying to do.

 

Door with 3D Door Swing.pac
  • Tom,

    In order to align to a swing angle component or frame opening,

    they must be in a snap set first.

    If you right click on swing component there is an option to add to snap set.

    It should turn to red dashed. Then when you move door component path close to snap set element

    it will try to align with angle component.

    If you want to add nested elements of a component to a snap set, find element in component tab

    and right click. This way individual elements can be added without adding entire component to snap set.

    There is also a "Snap Set" icon   that can be used add an item to a snap set or to clear all snap sets by clicking in space.

    HTH's

    Tom

  • Dan, Thanks for the reply.

    Yes, they must be part of the snap set. Making a snap set isn't the problem. Have patience with me, because I'm having trouble describing the problem I have.

    I can add the frame opening path (in the case of DoorSingleFlush PAZ this is RefPath_DoorLeaf of component Seg_DoorLeafPlacement_1) and door swing angle path (in the case of DoorSingleFlush PAZ this is RefPath_Leaf1_3d of component Seg_3DLeaf1Swing_1 ) to a snap set, but I can't make the door positioner be "on" the frame opening, and "on" the door swing angle path in such a way that the door will open when I change the angle variable.

    To replicate my problem, you can start by opening the DoorSingleFlush PAZ file from the US DataSet and save it as a .pac. Open the .pac file delete the door leaf component (CMP_DoorSingleLeaf1_Flush_1). Attach a component library with a door leaf component. Place the component in the file and attempt (in my case, every way my simple brain can think of) to position the door leaf on the paths RefPath_DoorLeaf and RefPath_Leaf1_3d in such a way that changing the variable Leaf1Angle3d will swing the door open.

    If you can do that, then I would like to know the method you used to accomplish it. That's my question. How can that be done? I'm assuming I'm missing some fundamental concept about positioners. Or perhaps I'm missing some knowledge of how components act when they are created in or out of plane.

    Thanks in advance.

  • Tom,

    Take a look at attached video.

    It shows how I attach door component to a swing component.

    HTH,
    Tom

  • Tom, Wow, you made me look like an idiot! (;o) Smiling) I tested this out before I used it as an example, but used 45 degrees instead of the 90 degrees you used and it wouldn't position. I used the 90 degrees you used and it worked like a charm. At any rate it doesn't answer my question as I still can't get my roof hatch cell to work. I'm attaching it as a zip containing the roof hatch PAC and the roof hatch door as a PAC. Maybe you can point me to the error of my ways. Thanks in advance for any help!

    Roof Hatch.zip
  • Tom,

    I believe you have run into limitation of an Auto component.
    Auto components want to maintain plane used during creation. A door leaf wants to maintain a vertical orientation.

    You are trying to create an object that moves from a horizontal plane to a vertical plane.

    The only way I know that this can be achieved is with a Rigid Component.
    A rigid component will have an anchor point a normal direction and a rotation direction that can spin around the normal.

    When you create rigid component, the normal would be along the hinge and rotation direction would be along the narrow part of door.

    It will act like shown in video.

    Answer Verified By: Tom MacKnight