PDA

View Full Version : Dimension Text Placement



glazier
23rd Mar 2006, 04:05 am
I have my Dimension set up to put the text above the dimension line, I am trying to add text below the dimension and below the dimension line.

96-1/4
R.O

That is what i am trying to accomplish but when i use ddedit and add the text underneath it pushes the dimension up and places the text under the dimension but still over the line.

Can someone tell me how to achieve this.

profcad
23rd Mar 2006, 06:24 am
You can press enter after the default text or the <>.

Select the dimension text, Right Click and select Dim Text Position, then select Move Text Alone.

The dimesion line will disappear.

I don't know of a way to get the line to show through the text.

Yamma
23rd Mar 2006, 06:43 am
You can use "\X" after <> to add text under the line. For example <>\XR.O

thalon
23rd Mar 2006, 03:09 pm
I have a LIPS file to help with what you want.

I have only used this with version 2002, so I don't know if it works properly in other versions.

create a new file named dimnote.lsp


;; ================================================== ====
;; Dimension Note - add a modifier note to an existing
;; associative dimension string.
;;
;; Copyright 1999, Mike Lapinski
;;
;; Permission to use, copy, modify, and distribute this software
;; for any purpose and without fee is hereby granted, provided
;; that the above copyright notice appears in all copies and
;; that both that copyright notice and the limited warranty
;; notice below appear in all supporting documentation.
;;
;; D I S C L A I M E R O F W A R R A N T Y
;; ================================================== ====
;;
;; THIS PROGRAM IS MADE AVAILABLE ON AN "AS IS" BASIS WITHOUT
;; WARRANTIES AS TO PERFORMANCE OF MERCHANTABILITY OR ANY
;; OTHER WARRANTIES WHETHER EXPRESSED OR IMPLIED. I DO NOT
;; WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
;; UNINTERRUPTED OR ERROR FREE.
;;
;; I SHALL UNDER NO CIRCUMSTANCE BE LIABLE FOR ANY DAMAGES,
;; INCLUDING BUT NOT LIMITED TO; LOSS OF PROFITS, LOSS OF TIME,
;; LOSS OF DATA OR BUSINESS INTERRUPTION RESULTING FROM THE USE
;; OF THE INABILITY TO USE THIS SOFTWARE. THE USER MUST ASSUME
;; THE ENTIRE RISK OF USING THE PROGRAM.
;;
;; C O P Y R I G H T N O T I C E A N D T R A D E M A R K S
;; ================================================== ===========
;;
;; This program is copyrighted with all rights reserved by
;; Michael Lapinski. This program is for "PUBLIC DOMAIN" use
;; and may not be marketed or offered for sale to others.
;;
;;================================================ ======
;; Function&#58; DN_ShowNote
;; Purpose&#58; Show note selected from ListBox in EditBox
;;================================================ ======
&#40;defun DN_ShowNote &#40;/ lnum lnote&#41;
&#40;set_tile "error" ""&#41;
&#40;setq lnum &#40;get_tile "lb_notes"&#41;
lnote &#40;nth &#40;atoi lnum&#41; dm_notes&#41;
&#41;
&#40;set_tile "eb_note" lnote&#41;
&#40;princ&#41;
&#41;
;;================================================ ======
;; Function&#58; DN_PlaceNote
;; Purpose&#58; If valid note is input, close dialog box
;;================================================ ======
&#40;defun DN_PlaceNote &#40;&#41;
&#40;set_tile "error" ""&#41;
&#40;setq dn_modifier &#40;strcase &#40;get_tile "eb_note"&#41;&#41;&#41;
&#40;if &#40;= dn_modifier " "&#41;
&#40;set_tile "error" "Invalid note string"&#41;
&#40;done_dialog 1&#41;
&#41;
&#41;
;;================================================ ======
;; Function&#58; DN_AppendNote
;; Purpose&#58; Append note to selected dimension entity
;;================================================ ======
&#40;defun DN_AppendDim &#40;val placement / ent dval&#41;
&#40;setq ent &#40;car &#40;entsel "\nSelect dimension for note&#58; " &#41;&#41;&#41;
&#40;while &#40;/= "DIMENSION" &#40;cdr &#40;assoc 0 &#40;entget ent&#41;&#41;&#41;&#41;
&#40;princ "\nSelected entity is not a DIMENSION."&#41;
&#40;setq ent &#40;car &#40;entsel "\nSelect dimension for note&#58; "&#41;&#41;&#41;
&#41;;while
&#40;setq ent &#40;entget ent&#41;
dval &#40;cdr &#40;assoc 1 ent&#41;&#41;
&#41;
&#40;if &#40;= dval ""&#41;
&#40;setq dval "<>"&#41;
&#41;
&#40;if &#40;= placement 1&#41; ;above line
&#40;setq val &#40;strcat dval " " val&#41;&#41;
&#40;progn
&#40;if &#40;wcmatch dval "*\\X*"&#41;
&#40;setq val &#40;strcat dval "\\P" val&#41;&#41;
&#40;setq val &#40;strcat dval "\\X" val&#41;&#41;
&#41;
&#41;
&#41;
&#40;entmod &#40;subst &#40;cons 1 val&#41;&#40;assoc 1 ent&#41; ent&#41;&#41;
&#40;princ&#41;
&#41;
;;================================================ ======
;; Main Function - Dimension NOTE
;;================================================ ======
&#40;defun C&#58;DNOTE &#40;/ dcl_id dm_notes dn_above&#41;
&#40;setq dcl_id &#40;load_dialog "dimnote.dcl"&#41;&#41;
&#40;if &#40;not &#40;new_dialog "dimnote" dcl_id&#41;&#41;&#40;exit&#41;&#41;
&#40;setq dm_notes '&#40;"CLEAR" "PROJ." "MIN." "MAX."
"REF." "I.S.F." "O.S.F." "TYPICAL" "TYP."
"VERIFY IN FIELD" "C/C" "O/O" "VERT." "HORIZ."
&#41;
dn_above 0
&#41;
&#40;set_tile "eb_note" "TYP."&#41;
&#40;set_tile "dn_below" "1"&#41; ; Set as default
&#40;start_list "lb_notes"&#41;
&#40;mapcar 'add_list dm_notes&#41;
&#40;end_list&#41;
&#40;set_tile "lb_notes" "7"&#41;
&#40;action_tile "lb_notes" "&#40;DN_ShowNote&#41;"&#41;
&#40;action_tile "dn_above" "&#40;setq dn_above 1&#41;"&#41;
&#40;action_tile "dn_below" "&#40;setq dn_above 0&#41;"&#41;
&#40;action_tile "accept" "&#40;DN_PlaceNote&#41;"&#41;
&#40;action_tile "cancel" "&#40;done_dialog 0&#41;"&#41;
&#40;if &#40;eq &#40;start_dialog&#41; 1&#41;
&#40;DN_AppendDim dn_modifier dn_above&#41;
&#41;
&#40;unload_dialog dcl_id&#41;
&#40;princ&#41;
&#41;
&#40;princ "\nDNOTE Loaded..."&#41;
&#40;princ&#41;


and this to a new file named dimnote.dcl


//
// Dimension Note - add a modifier note to an existing
// associative dimension string.
//
// Copyright 1999, Mike Lapinski
//
dimnote &#58; dialog &#123;
label = "Dimension Notes";
initial_focus = eb_note;
&#58; list_box &#123;
label = "Notes";
mnemonic = "o";
key = "lb_notes";
height = 11;
&#125;
&#58; radio_column &#123;
fixed_width = true;
&#58; radio_button &#123;
label = "Locate Below Dimension";
mnemonic = "B";
key = "dn_below";
&#125;
&#58; radio_button &#123;
label = "Locate Next to Dimension";
mnemonic = "N";
key = "dn_above";
&#125;

&#125;
&#58; edit_box &#123;
label = "Note&#58;";
key = "eb_note";
horizontal_alignment = left;
&#125;
spacer;
ok_cancel;
errtile;
&#125;

JBullseye74
23rd Mar 2006, 03:55 pm
You can use "\X" after <> to add text under the line. For example <>\XR.O

This is what i use... by far the simplest. o:)

maze
23rd Mar 2006, 04:24 pm
You can use "\X" after <> to add text under the line. For example <>\XR.O

i use this as well. easiest i found :D

glazier
25th Mar 2006, 02:55 am
That worked great and easy, can anyone tell me why that works and how, what does the slash represent, is it a routine or a macro and is there a list of them for other ways to represent different things, if so does anyone have the list.
Thanks Bill