Author Topic: Dimensioning round the bend!  (Read 4781 times)

0 Members and 1 Guest are viewing this topic.

jonesy

  • SuperMod
  • Seagull
  • Posts: 15568
Dimensioning round the bend!
« on: March 08, 2006, 05:47:00 AM »
Forgive my ignorance but, how do I dimension and get a true length of line around a bend.

Like so...


Any advice gratefully received

Many thanks
Tracey :-)
Thanks for explaining the word "many" to me, it means a lot.

nivuahc

  • Guest
Re: Dimensioning round the bend!
« Reply #1 on: March 08, 2006, 06:16:38 AM »
uhhh... not to my knowledge. Of course, I rarely use dimensions, so, don't take my word for it.

Think of it from a fabricators point of view, though. Let's pretend this is a pipe... when you bend a pipe, it stretches a bit. So, in order for them to know what size pipe to start with, giving them the total length, bend/curve included, would be misleading. Giving them the length to the point of the bend, the radius of the bend, and the distance of the bend, would give them more accurate information to go by.

jonesy

  • SuperMod
  • Seagull
  • Posts: 15568
Re: Dimensioning round the bend!
« Reply #2 on: March 08, 2006, 06:28:26 AM »
uhhh... not to my knowledge. Of course, I rarely use dimensions, so, don't take my word for it.

Think of it from a fabricators point of view, though. Let's pretend this is a pipe... when you bend a pipe, it stretches a bit. So, in order for them to know what size pipe to start with, giving them the total length, bend/curve included, would be misleading. Giving them the length to the point of the bend, the radius of the bend, and the distance of the bend, would give them more accurate information to go by.

This is for kerbing, what they want is the total distance of that type of Kerb, I to dont need to do too much dimensioning, so I didnt know whether it was possible or not
Thanks for explaining the word "many" to me, it means a lot.

nivuahc

  • Guest
Re: Dimensioning round the bend!
« Reply #3 on: March 08, 2006, 06:34:40 AM »
Kerbing? Who's he? :)

Anyway, do a list on the pline, does it give you a total length? If so, just attach a leader with the total length on it. That's what I would do, anyway. Actually, I'd probably still dimension it all out, like I mentioned above, then I'd attach the leader.  :oops:

jonesy

  • SuperMod
  • Seagull
  • Posts: 15568
Re: Dimensioning round the bend!
« Reply #4 on: March 08, 2006, 06:47:47 AM »
Thats similar to what I've been doing in the past, but one engineer wants to see dimensions. Theres no way I'm overriding or exploding dimensions just to get the look they want
Thanks for explaining the word "many" to me, it means a lot.

nivuahc

  • Guest
Re: Dimensioning round the bend!
« Reply #5 on: March 08, 2006, 06:57:24 AM »
good for you! :-)

Tell him to go back to Engineering 101 and see how it's supposed to be done  :wink:

Jürg Menzi

  • Swamp Rat
  • Posts: 599
  • Oberegg, Switzerland
Re: Dimensioning round the bend!
« Reply #6 on: March 08, 2006, 07:16:43 AM »
Hi Jonesy

Not exactly what you are looking for, but maybe helpful:
Here
A computer's human touch is its unscrupulousness!
MENZI ENGINEERING GmbH
Current A2k16... A2k24 - Start R2.18

nivuahc

  • Guest
Re: Dimensioning round the bend!
« Reply #7 on: March 08, 2006, 07:19:10 AM »
ooooo... I gotta try that one out!

Thanks Jürg!

jonesy

  • SuperMod
  • Seagull
  • Posts: 15568
Re: Dimensioning round the bend!
« Reply #8 on: March 08, 2006, 07:27:52 AM »
Will try that out.

Thanks Jurg
Thanks for explaining the word "many" to me, it means a lot.

whdjr

  • Guest
Re: Dimensioning round the bend!
« Reply #9 on: March 08, 2006, 08:29:19 AM »
Tracey,

This won't help you now but Acad 2006 included a dimarc command.  It only dimensions the arc though and not the line too.

whdjr

  • Guest
Re: Dimensioning round the bend!
« Reply #10 on: March 08, 2006, 08:37:21 AM »
Tracey,

Leonid Nemirovsky has two versions at his site.

<=2004  -  dimarc
  =2005  -  adim

jonesy

  • SuperMod
  • Seagull
  • Posts: 15568
Re: Dimensioning round the bend!
« Reply #11 on: March 08, 2006, 08:37:51 AM »
Thanks Will, I've only just been upgraded to 2005, so theres no chance of 2006 until "corporate" decide to.

Just checked out those others, and they are not quite what the engineer wants to see... Why do they always want more :realmad: "But AutoCAD can do THAT surely"
Thanks for explaining the word "many" to me, it means a lot.

Jürg Menzi

  • Swamp Rat
  • Posts: 599
  • Oberegg, Switzerland
Re: Dimensioning round the bend!
« Reply #12 on: March 08, 2006, 10:12:13 AM »
(...) "But AutoCAD can do THAT surely"
Correct, but it's not that simple...

A computer's human touch is its unscrupulousness!
MENZI ENGINEERING GmbH
Current A2k16... A2k24 - Start R2.18

jonesy

  • SuperMod
  • Seagull
  • Posts: 15568
Re: Dimensioning round the bend!
« Reply #13 on: March 08, 2006, 10:15:04 AM »
(...) "But AutoCAD can do THAT surely"
Correct, but it's not that simple...



Thats not me... thats the engineers. They think AutoCAD does everything (and pretty much by itself too!
Thanks for explaining the word "many" to me, it means a lot.

LE

  • Guest
Re: Dimensioning round the bend!
« Reply #14 on: March 08, 2006, 11:17:30 AM »
Hi Tracey;

I have a start of a routine in visual lisp that might work for what you are looking for, here is the code no time to play to much with this... any of the swamp's might be able to continue with the code, or at least with the idea...

HTH.

Note: requires the file "rwiz_utils.lsp" included here:

http://www.theswamp.org/index.php?topic=8889.0

[inside of the ZIP]

Code: [Select]
(defun C:TST  (/ ename obj   measurement     pt      pm       pm2
       array new_poly p1   p2    p3     p4      block_name
       p0 ss vla_att1)
  (if (and
(setq ename (car (entsel "\nSelect an open polyline: ")))
(setq obj (vlax-ename->vla-object ename))
(eq (vla-get-objectname obj) "AcDbPolyline")
(eq (vla-get-closed obj) :vlax-false))
    (progn

      (setq measurement
     (vlax-curve-getdistatparam
       obj
       (vlax-curve-getendparam obj)))

      (setq pt (getpoint "\nSelect dimension location: "))

      (setq pm (vlax-curve-getpointatdist
obj
(* measurement 0.5)))

      (setq array (vla-offset obj (distance pm pt)))

      (setq new_poly (car (vlax-safearray->list (vlax-variant-value array))))

      (if (not (equal (car (nentselp "" pt)) (vlax-vla-object->ename new_poly)))
(progn
  (vla-delete new_poly)
  (setq array (vla-offset obj (- (distance pm pt))))
  (setq new_poly (car (vlax-safearray->list (vlax-variant-value array))))))

      (vla-put-color new_poly acBlue)

      (setq pm2 (vlax-curve-getpointatdist
  new_poly
  (* measurement 0.5)))

      (setq p1 (vlax-curve-getpointatparam obj (vlax-curve-getstartparam obj)))
      (setq p2 (vlax-curve-getpointatparam obj (vlax-curve-getendparam obj)))

      (setq p3 (vlax-curve-getpointatparam
new_poly
(vlax-curve-getstartparam new_poly)))
      (setq p4 (vlax-curve-getpointatparam new_poly (vlax-curve-getendparam new_poly)))

      (setq vla_line1 (rwiz-addline p1 p3))
      (setq vla_line2 (rwiz-addline p2 p4))

      (setq block_name "*U")

      (vl-catch-all-error-p
(vl-catch-all-apply
  'vla-item
  (list (vla-get-blocks (rwiz-thisdwg)) block_name)))

      (setq p0 (list 0.0 0.0 0.0))

      ;; make an empty selection set
      (setq ss (ssadd))
      ;; pass the objects to selection set
      (ssadd (vlax-vla-object->ename new_poly) ss)
      (ssadd (vlax-vla-object->ename vla_line1) ss)
      (ssadd (vlax-vla-object->ename vla_line2) ss)

      ;; make the block
      (setq vla_block
     (rwiz-addblock
       p1
       ;;(list 0.0 0.0 0.0)
       block_name
       ss
       T))

      ;; make the attribute
      (setq
vla_att1
(vla-addattribute
   vla_block
   0.09375
   acattributemodeverify
   "NUMBER"
   (vlax-3d-point p0)
   "NUM"
   ;;"#"
   (rtos measurement 2)

   ))

      ;; put the attribute on layer 0
      (vla-put-layer vla_att1 "0")
      ;; put the attribute by block
      (vla-put-color vla_att1 acbyblock)

      ;; align the attribute middle center
      (vla-put-alignment vla_att1 acalignmentmiddlecenter)
      ;; not verify the attribute at insertion
      (vla-put-verify vla_att1 :vlax-false)
      ;; put the attribute on his alignment point
      (vla-put-textalignmentpoint vla_att1 (vlax-3d-point p0))

      (rwiz-insertblock
p1
(vla-get-name vla_block)
1
1
1
0.0)

      )))