if/Cond angle

Discussion in 'AutoCAD' started by jvellek, Mar 23, 2005.

  1. jvellek

    Joe Burke Guest

    Hi Tony,

    I'd rather have a pointer to where you talked about this before, than an argument.
    :)

    Thanks
    Joe
     
    Joe Burke, Mar 29, 2005
    #21
  2. Apparently I forgot how your program worked. I thought the single click
    was at a
    Yes according to where the point [door hinge] is selected along the wall
    [the line] the door installation is calculated.
    I do not know Tony solution.

    What I did was to work with a ratio for the wall thickness and base on the
    selection of the hinge point, the routine finds the opposite wall side,
    verifies if is a wall made by two parallel lines, and belong to the same
    layer.

    From that, all the points for the door opening are calculated and the the
    wall lines are drawn base on the opening, I did not use the break command.

    That is what I did, basically.

    Regards,
    Luis.
     
    Luis Esquivel, Mar 29, 2005
    #22
  3. jvellek

    Joe Burke Guest

    Hi Luis,

    Forgive me, but I must ask again. What exactly is the method used to find the
    opposite wall line?

    I appreciate this might be something you'd rather not reveal here. If so, I'll stop
    asking the question, which is at the heart of the issue at hand.

    Regards
    Joe

     
    Joe Burke, Mar 29, 2005
    #23
  4. O man.... I did not explain my self again.... sorry Joe my poor English is
    falling here or my age, whatever first.

    One more time:

    1. Pick the hinge point
    2. Base on a wall ratio thickness, the wall made by two parallel lines and
    the same layer is selected, from a vector selection in other word a fence.
    3. From those two points of the wall, the function does calculations to get
    the door/window opening.
    4. The wall is redraw including the wall opening, and no break command is
    used.
     
    Luis Esquivel, Mar 29, 2005
    #24
  5. If I remember correctly, I gave to you the function I use, inside of a FAS
    file, but never heard if you used or not.

    LE.
     
    Luis Esquivel, Mar 29, 2005
    #25
  6. jvellek

    Joe Burke Guest

    Luis,

    Thinking out loud, maybe I see what your are talking about.

    If you can establish the closest parallel line (by some method?) on the same layer as
    the first line picked, then the rest should fall into place. For instance, the point
    on the opposite wall from pick point is simply vlax-curve-getClosestPointTo pick
    point.

    Am I getting warm? :)

    Joe
     
    Joe Burke, Mar 29, 2005
    #26
  7. :)

    To do the calculations for the wall opening I come up with a special
    algorithm.

    Joe,

    Is this for somethuing that you really are going to use? or is just for an
    excercise?


    LE.
    vlax-curve-getClosestPointTo pick
     
    Luis Esquivel, Mar 29, 2005
    #27
  8. jvellek

    Joe Burke Guest

    Luis,

    Thanks. What I was trying to figure out was whether you use a vectored selection
    fence to find the opposite wall.

    Apparently so. That seems OK as long you don't also rely on the selection point
    returned by ssnamex, as I was doing before. Rather use vlax-curve-getClosestPointTo.

    Hope this makes some sense my friend :)

    Joe
     
    Joe Burke, Mar 29, 2005
    #28
  9. ??????????????????????????????????????????????????????????????????????

    Nope....

    Joe,

    If some day you have some time, I can provide to you, first the function
    compiled, then if you really are going to use it, I may let you have it as
    open source.

    Later my friend,
    Luis.
     
    Luis Esquivel, Mar 29, 2005
    #29
  10. jvellek

    Joe Burke Guest

    Luis,

    I thought this discussion was just an exercise, since I'm happy with how my door
    programs work now. As I said and still believe, I don't think reducing things to the
    fewest number of clicks is the holy grail of what's involved here.

    That's not to say I might not need to reconsider in light of new insights... :)

    But I'll toss this back to you for consideration. What happens if one side of the
    wall is on the A-WALL-N layer and the other side in on the A-WALL-E layer? A program
    which searches for and expects both wall lines on the same layer will likely fail.
    That's not a concern if the program asks the user to select both wall lines.

    That's the kind of thing which led me back to where I am now.

    Regards
    Joe
     
    Joe Burke, Mar 29, 2005
    #30
  11. No problem I understand.... I also wrote that possibility, where you simple
    select the two lines and no need to check if they are parallel or if they
    are in the same layer.

    See ya'
    Luis
     
    Luis Esquivel, Mar 29, 2005
    #31
  12. Sorry, I don't really know if it is still around or not.

    There's not much too it. You just look at the lines
    picked to see if the distance to the nearest wall
    intersection is less than the width of the door. If
    it is, the door can only hinge on the side of the
    opening closest to the wall intersection, which is
    presumed to be the corner of a room. Usually, doors
    swing into rooms, but if they don't, then you have
    to look at the opposite line (the one that wasn't
    picked).

    Either way, you can tell whether the door can be
    hinged on either side, or only one side, based on
    the distance from the opening to the nearest
    wall intersection.
     
    Tony Tanzillo, Mar 29, 2005
    #32
  13. jvellek

    Joe Burke Guest

    Tony,

    Thanks for the reply.

    What I don't quite understand: "...look at the lines picked to see...". I thought
    only one line is picked to allow a one-click door insert?

    Actually I'm more interested in your thoughts regarding general issues I mentioned.
    For instance, do you think it makes sense to add complexity to a program, which in
    turn may make it less reliable, when all it does is save the user an obvious
    click/pick?

    Joe Burke
     
    Joe Burke, Mar 30, 2005
    #33
  14. jvellek

    Joe Burke Guest

    Luis,

    OK, so I'm not crazy. :)

    Thanks
    Joe
     
    Joe Burke, Mar 30, 2005
    #34
  15. jvellek

    Joe Burke Guest

    Hi Kent,

    Agreed, I misunderstood what you meant by door-flipping. But my reply would be the
    same regardless. To flip the door along a mirror line perpendicular to the wall,
    versus parallel to the wall, would simply involve calculating the midpoints between
    two different pairs of jamb points.

    The four jamb points are known. So there's no need to have an object to, "pick the
    midpoint of..." regardless of whether door head or threshold lines are drawn.
    Thresholds are an option. I'm thinking about making door heads an option too, since I
    recently ran into a project where they are not needed.

    Regarding your interface method, I can't comment since I assume what's needed would
    be different given the block method versus draw on-the-fly.

    Thanks for the pointer to the site. I see under Architectural - CAD Layers they
    suggest title case layer names like this: A-Anno-Iden. Is that what you use? It's
    what I prefer.

    Joe Burke
     
    Joe Burke, Mar 30, 2005
    #35
  16. It's been at least 15 years since I wrote my first LISP
    that searched around the pick point for the line that
    represents the opposite side of a wall whose other line
    was picked.

    You get a selection set using a window/crossing box
    that is centered on the pick point, and is large enough
    to intersect the opposite side of the wall. You then
    go through the resulting entities looking for a line that
    is parallel to and has the same properties as the picked
    line, and assuming you only find one of those, the odds
    that it represents the opposite side of the wall, are fairly
    good.
    That's a judgement call, and is based on your presumption
    that doing this is going to seriously affect reliability. I don't
    know if I can agree, provided it is done correctly.
     
    Tony Tanzillo, Mar 30, 2005
    #36
  17. ...
    And part of my point from the beginning was that YOU have to do that
    calculating if the door is drawn on the fly, grouped or not. With a door as
    a block, and a FlipDoor routine written appropriately, all I have to do is
    pick once, anywhere on the door block, and it's instantly flipped, because
    the routine has information available to it, from the block insertion, that
    allows IT to do all the calculating for me. Just one of the advantages of
    the block approach.
    We're still in the process of refining our Layer naming standards. We use
    the general A-XXXX-XXXX approach, but we find some serious shortcomings in
    most of the standard listings we've seen. For instance, in the one on that
    site, they have a Layer A-FLOR-PFIX for Plumbing FIXtures in the FLOoR plan.
    We think that A-FLOR- should be used for the actual FLOoR itself (tile
    patterns, edges between different flooring materials, level changes
    including steps, etc.). We put plumbing fixtures on a layer A-PLUM-FIXT
    (yes, an "Architectural" layer, because the first layer is supposed to
    represent who did the drawing, not the discipline of the layer's contents --
    our engineers can rename layers if they want, if they build theirs from our
    base drawings). We don't understand why walls get their own category of
    layers (A-WALL-), if plumbing fixtures don't, because walls are just as much
    a part of the "floor plan" as plumbing fixtures are, so why don't they use
    A-FLOR-WALL and the like?

    Similarly, we don't agree with a lot of their layer names that end in -IDEN
    (for identification). Those are annotations, so we put them all under
    categories starting with A-ANNO-. That way, if you want to WBLOCK or print
    out a drawing of the building parts only, without the notes and dimensions
    and drawing titles, etc., you can easily turn off all the A-ANNO- layers
    because they appear together in the layer listing, rather than having to
    find all of them scattered around among ceiling and wall and floor and other
    layers. But we DON'T like some of their A-ANNO- categories, for example for
    Viewports, which are not by any conceivable line of reasoning annotations.
    We use some layers starting with A-SHET- (for SHEeT) to put stuff that's
    just about the drawing sheet, not the building, with subcategories for -TITL
    (border and TITLe block), -VPRT (for ViewPoRTs), -TEXT, etc.

    A few other "wrong" ones in their list:
    - A-GLAZ-SILL for window sills, which are not glazing in any way (they're
    usually carpentry, but sometimes masonry or other things); and we use
    A-WIND- as a category, since GLAZing is sub-part of WINDows, not the other
    way around.
    - They have redundant layers like A-SECT-MCUT with A-SECT-P#, and
    A-WALL-NEWW with several other A-WALL- layers.

    I could go on, but you probably get the idea....
     
    Kent Cooper, AIA, Mar 30, 2005
    #37
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.