Quango1 Posted November 8 Posted November 8 Hello, Hopefully this is simple and I'm just missing something. I'm making a block that is used for 450mm paving slabs, i want the x-y parameter to be linked to the scale parameter for the blue line which is used to align to the building. When i drag using the nodes in the x-y direction the blue line will scale with the X but if i then move the X-Y back the blue line wont scale back. Is there a way to link these two? Thanks in advance! Dynamic Slab 450.dwg Quote
BIGAL Posted November 9 Posted November 9 Need more detail not just the block. If your using say 450mm square pavers the use hatch pattern net and just scale correct to 450. You can have staggered as well lots of examples out or just look inside a PAT for something similar just cahnge the values to suit to 450 give it a new name. To hact on an angle just do UCS OB select object on angle, then use hatch, then UCS W. Played with dynamic block why not just draw a square and array it much easier. Post a proper dwg with lots of blocks placed so we can see what it is your trying to do. Quote
Quango1 Posted November 11 Author Posted November 11 Hi Bigal, thanks for getting back to me on this. maybe it would be easier to just use an array. as the project I'm working on has multiple patio sizes i thought it might be easier to have a dynamic block. the patios need to be 100mm from the property edge and using a block with the blue line as the base and the align feature saves me having to rotate loads of arrays to different orientations or changing loads of hatches to different rotations. Maybe I'm making things to complicated when there is a more simple way to do it. I have attached an example of the properties and the patios. my main query was if it was possible to link the linear scale parameter to the X-Y parameter nodes Dynamic Slab 450Example.dwg Quote
BIGAL Posted November 11 Posted November 11 (edited) Ok can be done, do some thing similar for concrete waffle slabs, the only question is that when you place the 1st paver that is the control point for all the pavers. Try this, I made a hatch pattern as 1st step see code I saved it as a custom Pat file, or you can add to Acad.pat etc. ; Chk CCW Orignal idea by Kent Cooper, 1 August 2018 Offsetinorout.lsp ; Modified By Alan H July 2020 ; Use hatch TILE450 ; *TILE450 ; 0,0,0,0,450 ; 90,0,0,0,450 ; Fill in shape with 450 tiles ; By Alan H NOV 2024 (defun c:p450 ( / AH:chkcwccw plent ent2 pt ang area1 area2 dist objnew co-ord) (setq oldsnap (getvar 'osmode)) (setvar 'osmode 0) (command "-layer" "M" "TILES" "c" 1 "" "") (while (setq plent (car (entsel "\nPick pline "))) (setq pentg (entget plent)) (setq obj (vlax-ename->vla-object plent)) (vla-offset obj 1.0) (setq objnew (vlax-ename->vla-object (entlast))) (setq area1 (vlax-get objnew 'Area)) (vla-delete objnew) (vla-offset obj (- 0.0 1.0)) (setq objnew (vlax-ename->vla-object (entlast))) (setq area2 (vlax-get objnew 'Area)) (vla-delete objnew) (if (> area1 area2) (command "PEDIT" plent "reverse" "") ) (vla-offset obj 0.1) (setq ent2 (entlast)) (command "chprop" ent2 "" "layer" "TILES" "") (setvar 'osmode 1) (setq pt (getpoint "\nPick control point inner pline ")) (setq co-ord (mapcar 'cdr (vl-remove-if-not '(lambda (x) (= (car x) 10)) pentg))) (setq ang (/ (* (angle (car co-ord)(cadr co-ord)) 180.0) pi) ) (command "-hatch" "s" ent2 "" "P" "TILE450" 0.001 ang "Layer" "TILES" "Origin" pt "") ) (setvar 'osmode oldsnap) (princ) ) (c:p450) Edited November 12 by BIGAL Quote
Recommended Posts
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.