Jump to content

Ordinate dimension


dompie

Recommended Posts

Hello,

 

I've been visiting this site for years and it helped me a lot in the past but now I'm looking for something that probably needs some lisp programming or so.

 

Is there a possibility to place ordinate dimensions in ACAD in the same easy way as you do it in Microstation?

I mean placing ordinate dimensions without messing around with the UCS or things like that to move your 0,0 coord. and place a cell/block at the end of the dimension line. (like the arrow in the att)

 

For those who don't know MS: you select ordinate dimension and enter the base value (ie 100 like in the attachement), then you just pick the basepoint, the direction of the axis you want to dimension and the location of the other points.

 

Thanks in advance for all the help.

 

Dompie

ordinate.jpg

Link to comment
Share on other sites

Somewhere on this site or some of the other lisp repositories are a couple of routines for doing what you want. I can't remember the exact name of the routine, but it has something to do with "datum dimensions". I used it a lot years ago when most of my work was mechanical, but haven't used it much since. I'll see if I can find it, and if I do I'll post a link. You may find it before I do though, headed out the door right now.

Link to comment
Share on other sites

This is not exactly the routine I was looking for, but it might get you started. If you know lisp programming, you can probably make this do what you want with some modifications:

 

;TIP #960: DATUM.LSP ©1994, Kevin Kronschnabl

;; The DATUM command enters the coordinate dimensioning mode. From there you

;; can use the DATUM dimensioning subcommands to setup and create a dimension.

;; Each subcommand can be abbreviated to the capital letters shown. A space

;; or RETURN will prompt for the start and placement points of the dimension.

;;

;; Origin - Sets the origin to be dimensioned from

;; Dimension - Dimensions a point from the origin

;; Reset origin - Resets the origin back to the world coordinate system

;; ? - This help Screen

;; IMPORTANT:

;; When finished dimensioning your drawing, use reset origin to reestablish

;; the drawings original 0,0,0 point.

;;------------------------------------------------------------------------

; Internal error handler defined locally

(defun *error* (msg)

(princ "error: ")

(princ msg)

(terpri)

(princ)

)

(defun err (s) ; If an error (such as CTRL-C) occurs

; while this command is active...

(if (/= s "Function canceled")

(if (= s "quit / exit abort")

(princ)

(princ (strcat "\nError: " s))

)

)

(RVAR)

(princ)

);defun

;;------------------------------------------------------------------------

;get variables

(defun GVAR()

(setq FDIA (getvar "filedia")) ;get system settings

(setq CMDE (getvar "cmdecho"))

(setq MNUE (getvar "menuecho"))

(setq EXPT (getvar "expert"))

(setq CCLR (getvar "cecolor"))

(setq CLTP (getvar "celtype"))

(setq UCSO (getvar "ucsorg"))

);defun

;;------------------------------------------------------------------------

;set variables

(defun SVAR()

(setvar "cmdecho" 1) ;turn command echo off

(setvar "menuecho" 1) ;turn menu echo off

);defun

;;------------------------------------------------------------------------

;reset variables

(defun RVAR()

(setvar "cmdecho" CMDE)

(setvar "cmdecho" MNUE)

);defun

;;------------------------------------------------------------------------

;read help

(defun DHLP(/ FILE LINE)

(setq FILE (open (findfile "datum.lsp") "r")

LINE (read-line FILE)

);setq

(repeat 24

(setq LINE (substr LINE 4 75))

(write-line LINE)

(setq LINE (read-line FILE))

);repeat

(close FILE)

(princ)

);defun

;;------------------------------------------------------------------------

;main body

(defun C:DATUM(/ QST ORG)

(setvar "cmdecho" 0)

(initget "ORIGIN DIM DIMENSION RESET O D R ?")

(setq QST (getkword "\nSelect option - Origin/Dimension/Reset origin/?/: "))

(if (= QST "?")

(progn

; (command "type" (strcat (findfile "datum.hlp") "|more"))

(DHLP)

(initget "ORIGIN DIM DIMENSION RESET O D R")

(setq QST (getkword "\nSelect option - Origin/Dimension/Reset origin/: "))

);progn

);if

(if (or (= QST nil) (= QST "D") (= QST "DIM") (= QST "DIMENSION"))

(progn

(initget 1)

(setq SPT (getpoint "\nPick starting point: "))

(initget 1)

(setq EPT (getpoint "\nPick ending point: " SPT))

(command "dim" "ordinate" SPT EPT "")

(command "exit")

);progn

);if

(if (or (= QST "O") (= QST "ORIGIN"))

(progn

(initget 1)

(setq ORG (getpoint "\nPick the Origin Point: "))

(command "ucs" "origin" ORG)

);progn

);if

(if (or (= QST "R") (= QST "RESET"))

(progn

(command "ucs" "world")

(princ "\nThe origin has been reset...")

);progn

);if

(princ)

); end datum.lsp

Link to comment
Share on other sites

I stumbled across another lisp routine that will do what you want (i.e. - place elevation levels). It's called Level.lsp and can be downloaded, along with some accompanying files, at the Cadalyst website. The routine was written by Neil Foden and submitted 22-Feb-2010. Look for Tip# 3354 - Place elevation levels.

 

www.cadalyst.com

 

It can be found in the Cad Tips section.

 

A more definitive link:

 

http://cadtips.cadalyst.com/attributed-blocks/place-elevation-levels

Link to comment
Share on other sites

Hi Guys,

 

Thanks for your replies. :thumbsup:

I don't know anything about lisp-programming :unsure: so I'll first check out the routine ReMark suggested.

I'll let you know how it worked out.

 

D

Link to comment
Share on other sites

One option is to simply go ahead and place your ordinate dimension while in the WCS 0,0.

 

Afterwards, select your dimensions to display the grips, hot grip the dimension origin and drag them to where they need to be.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...