TheSwamp
CAD Forums => Vertically Challenged => Topic started by: cadplayer on November 06, 2012, 10:13:04 AM
-
Hello all!
I have a simple question if itīs possible to check if a block is placed on a surface.
In a Civil drawing I have moved block to a surface according to [http://docs.autodesk.com/CIVIL/2010/ENU/AutoCAD%20Civil%202010%20User%20Documentation/index.html?url=WS1a9193826455f5ff1d61fe411049ed455e-6c52-procedure.htm,topicNumber=d0e77825]help[/url]I procedor the surface is changing but the blocks stay on old place. It would be nice if blocks could move dynamically.
Any suggestions?!
PS.: I donīt know how can formatting url better so I only comes for example "Link" and you can push the word
-
Only Labels are dynamically linked to a Surface.
-
Thanks for replaying, I have test it - very good. For understanding a label is a own Civil entity not a block, but can I convert a label in a block with attribut
If I look on a label entity I miss the value which stay in label (for example hight from a surface)
Select object: ; IAeccSurfaceElevationLabel: IAeccSurfaceLevel Label interface
; Property values:
; Application (RO) = #<VLA-OBJECT IAeccApplication 0000000049c2e030>
; Description = Civil 3D API: Felaktig parameter.
; DisplayName (RO) = Civil 3D API: Felaktig parameter.
; Document (RO) = #<VLA-OBJECT IAeccDocument 0000000049c2dc10>
; Flipped = 0
; Handle (RO) = "48B05"
; HasExtensionDictionary (RO) = 0
; Hyperlinks (RO) = #<VLA-OBJECT IAcadHyperlinks 000000004df5f318>
; LabelStyle = #<VLA-OBJECT IAeccLabelStyle 000000003c2d5e10>
; Layer = "TERR-TEXT"
; LeaderAttachmentOption = 0
; Linetype = "ByLayer"
; LinetypeScale = 1.0
; Lineweight = -1
; MarkerStyle = #<VLA-OBJECT IAeccMarkerStyle 000000003ac61680>
; Material = "ByLayer"
; Name = Civil 3D API: Felaktig parameter.
; ObjectID (RO) = 62
; ObjectID32 (RO) = 62
; ObjectName (RO) = "AeccDbSurfaceElevLabel"
; OwnerID (RO) = 61
; OwnerID32 (RO) = 61
; Pinned = 0
; PlotStyleName = "ByLayer"
; Reversed = 0
; ShowToolTip = Civil 3D API: Felaktig parameter.
; Surface (RO) = #<VLA-OBJECT IAeccTinSurface 000000003abb7600>
; TrueColor = #<VLA-OBJECT IAcadAcCmColor 000000004df6e5b0>
; Type (RO) = 9
; Visible = -1
; Methods supported:
; ArrayPolar (3)
; ArrayRectangular (6)
; Copy ()
; Delete ()
; GetBoundingBox (2)
; GetExtensionDictionary ()
; GetXData (3)
; Highlight (1)
; IntersectWith (2)
; IsReferenceObject ()
; IsReferenceStale ()
; IsReferenceSubObject ()
; IsReferenceValid ()
; Mirror (2)
; Mirror3D (3)
; Move (2)
; Rotate (2)
; Rotate3D (3)
; ScaleEntity (2)
; SetXData (2)
; TransformBy (1)
; Update ()
-
you can do away with this need if you insert your blocks through use of Points and Description keys.
what sort of blocks are you wanting to keep on the surface anyway?
-
Hi Michael!
What are you meaning with "Points and Description keys"
I have a block with a attribut which display high of insertpoint from surface. Type this ...
-
use points , random on surface instead
one needs to stop using autocad techniques where there is a tool within c3d that does the job better
-
Thanks but itīs the same result I get with slope labels :oops:
-
your block appears to 'only' give surface elvation.
and why would one use a slope lable to get the surface elevation?
what exactly are you after? Your posted block doesn't offer any clues?