I have successfully created a dynamic block. I can insert it into AutoCAD, and it behaves like I want, except for one thing.
I can select the block and change it by taking a grippoint and place it at another position. So my block is e.q. stretched, just like I wanted.
But then. When I want to use the ordinary STRETCH command of AutoCAD, I can only stretch the insertion point of the block, but not the grippoints. Is there a way to set a grippoint to be select edable by commands like STRETCH.
my problem is whenever i make a new block a stretch point appears even if its not a dynamic block . also its not a stretch point, because when i click on it, it just move the block , and it always appear on the coordinates 0,0 it cause me a problem when I insert the block , autocad use this point as a base point , and its very far from the real block .
I am trying to insert a dynamic block and position and stretch the block, using the linear parameters, depending on values entered into a form.
I managed to create a form that would draw a series of boxes. And i managed to create a routine that would insert a block and size it depending on fixed values but i can't link the 2 together.
I have inserted a dynamic block (with .NET) and changed the value of a dynamic parameter (Linear). The block is stretched as it should be. (no problems here).
After a fiew other routines, I select the block again (by using its objectID) and a want to get the coördinates of the grip of the linear dynamic paramter. Is there a way to get the coördinates based on the linear dynamic parameter and its grip points? code in vb.Net?
In the attached dwg, I have a dynamic block "Platform" which is used several times. I have an adjustable length, with the array set to repeat the toggles (end view of 2x4) every 2', not including the last 6". That works perfectly, except one thing. "Distance1" is the distance of the parameter, because this was the only way that I found to stop the array from showing up within 6" of the last toggle. When I insert "Platform," and click the arrow to stretch it, I can type in the distance desired minus 6", and I'll get the correct length of platform. However, I'd like to be able to type in the actual length, and have the array work appropriately (the same way it does now).
Then, I'd like to create a custom toolbar that has a button to click which will insert this platform and ask me what the length of the platform should be (the entire distance). After specifying an insertion point, the block will insert at the correct length, with the appropriate toggles.
Here's what I'd like to do with it: using datalink, I'd like to count the following: how many copies of each length of platform is in the drawing, with toggle count and length of platform specified. I have already figured out the datalink to get the value of "Distance1", it's only the issue with the toggle count that I'm trying to figure out.
In my Project I build a static Block by inserting dynamic blocks from a template dwg and then explode them.
Actually I create a new Data Base, insert the blocks from my template, set the according Dynamic Properties, Explode the Block in the temp DB and then wblockclone the resulting Objects in my destination BlockTableRecord.
This works fine, but:
in my source dyn. block there is an associative surface defined by a Polyline(Rectangle) , attached a stretch action to change the size. I can set the Width parameter, after the Explode the polyline itself is updated, but the planar surface is not... so if I explode this block I get a well stretched Polyline and the "base" surface.
Manipulating the dynamic Block works fine... If I have stretched 3D-Meshes, they are ok as well. It seems to be something with the planar surface object.
Dim objs As New DBObjectCollection idsToImport.Clear() If Helpers.Registry.GetValueFromRegistry("ExplodeSubs").ToString = "1" Then ' debug switch bref.Explode(objs) 'the dyn BlockRef in the external (temp) Database bref.Erase(True) For Each [code].......
I have drawn a simple block that I want to stretch in two directions manually or from the properties palatte.
My block works fine once and then breaks down. Stretch the block in the 'Y' direction. Deselect the block. Stretch the block again and only the grip moves. Edit the block and close the block, the block resets.
I have a dynamic block for HSS column. Previously it was always 1"x1" and I would just scale it to the proper column size I needed. Ignoring the wall thickness.
But if there was an asymmetrical HSS (i.e. 4x6) the wall thicknesses and radii of corners would look funny.
So now I want one that has Stretch Actions to change the size of the column. I added a Stretch to one side, then the other with distance multiplier of -1. But as you can see on the attached, the Linear Parameter baseline doesn't stretch. I want to have the Parameter Distance the actual full width of the column so I can change the columns with the Properties Palette. Otherwise, I would just start the Parameter from the center of the column.
i'm trying to do a polar stretch and array for rigid insulation. RIGID2.dwg is my best option. but as you can see in the jpg, the first line should have arrayed already, because the gap is over 2". i tried to follow the instruction someone used for the clothes hangers URL.... and it resulted in RIGID.dwg, with the lines rotating off the main line.
The classic example of this, is a plan view of a door which shows you the opening, the arc and the door. How can I put a stretch on the opening and the door with a link in between, so when you stretch one, the other stretches with the same value?
I am working in ACAD 2009, I want to create a dynamic block for signage acad 2009 stretch mass element in dynamic where I need to be able to stretch hatched object. Neither mass element nor hatch do not stretch with the dynamic block. I need to see the area in 2D (not just a line).
We have specialized electrical schematic drawings on what is termed roll-drawings. These roll-drawings are simply 12" tall and variable width type drawings. We've had some as short as 24 inches and as long as 900 inches. As a result we use these section dimensions to distinguish circuit boundaries. It's not a real dimension, just a way to distinguish what circuit is located where. I've tried to recreate it using a block for improved automation as currently we just use a lisp routine that draws an arrow and lines. It looks like the screen capture of my block below. Is it possible to have the inside endpoints of the lines automatically stretch outwardly toward the arrows as the attribute Value changs?
I have created a dynamic block with stretch points. I used the tester in the block editor and all works fine, but when I insert the block into a drawing, the grips for the stretch action are in a completely different place...I don't mean a different place on the block, but a different place in the drawing...way out there. so if I go into the block editor for the block while I'm in the drawing...the parameters have now moved way out of the way also, in the block...but if I actually open up the block itself and then go into the block editor, all the parameters are where i placed them in the first place.
1. Move the right piece so it ends at 3', 4', & 5'. 2. the move right hook and 'backing' to stretch/copy (or array) so it adds a hook to the right and fills in the backing.
so this means that a 3' gets 4 hooks, 4' gets 5 hooks and 5' gets 6 hooks.
3. the block as shown is the smallest configuration with 3 hooks.
I could just set up a visibility and draw each one at it's appropriate length but I'm trying to keep this simple block to a min size. If all else fails, that's the route I'll take.
I've tried a couple different configurations and I keep getting duplicates or the end piece doesn't move the correct distance.
I am trying to put a polar stretch on the block uploaded, but it doesn't seems to work (maybe because of my constraint? ). If something major is wrong with it, is there another way I can make the same drawing proportional when i rotate it and stretch it ? Also, after that I have to use it for vlisp.
I've got a rectangular block that I need to stretch by both ends at the same time, maintaining the center/insertion point as it grows. I have attached the block to show what I'm working with.
I thought Linear Stretch Pair was the answer but I can't make it work.
I use dynamic blocks a lot of the time and most of them have a stretch action in them. What used to happen would be that whenever I clicked on the block I wanted to adjust and then clicked on the stretch action, it would show the distance from the base point and I was able to type in the new length of the object I was stretching. But now whenever I click on the stretch action, it shows that the current length is 0 and it is asking for the distance from the current point, not the base point. How can I change it so that it is always just the distance from the base point?
I am trying to have a dynamic block that will show the profile of a steel plate, detailing the angle of a bevel. Including the plate thickness, the land, gap and the actual angle of the bevel. I've gotten most of it figured out, but having a grip to SET the angle at a specific number, while maintaining the drawing's integrity is proving difficult. I have attached the block I have created so far (minus the previous attempts to rotate the beveled angle).
BVL_detail.dwg
The base point of the rotate parameter should be at the junction of the bevel & land. I need it to stay connected to the end point of the top-most flat line as it rotates, which means the lines need to stretch to match the changing angle. It will either rotate that line along with it, or if I apply a stretch tool, it gets all disconnected and just plain wrong.
One of the things I am liking about my current set up is I can grab a grip, and then type the number I need and it will pop on into place. Was hoping for the same effect if I typed in the angle, it would be exactly that, while also adjusting the drawing.
I have a block of a circle and a line coming from the left and right side quadrant of the circle to a common point (see pic). I want to create a dynamic block using a Stretch and Rotate parameter. You select the block, the Rotate point (grip) shows at the end of the two lines. I can grab that grip and rotate both lines and circle by moving this point around the screen, but cannot Stretch this point to a new location at the same time. How can I have the Rotation end point follow the Stretch parameter?
we have a rectangle 0,0 - 200,100 with a triangle inside 0,0 - 100,100 - 200,0
[/] <- for example
A dynamic stretch action is applied to the x of the rectangle, how do you scale/stretch the triangle with the rectangle and only on the x axis, so the triangle remains symmetrical from the middle of the rectangle on the y axis even when the rectangle is stretched?
Looking for a solution that doesn't involve inserting the block and scaling?
I have a block that I would like make dynamic. It is a fishhook arrow for a roundabout traffic sign. I would like to rotate the head to various angles, and have the body of the arrow adjust. I already have the ability to stretch the two end points in their direction, and rotate the head, but the curved part of the arrow body needs to adjust for the new head location. I tried dynamic stretch, but it would not attach to the rotate dimension. How do I get these arcs to stretch along their radii and associate the end arc points to the near end of arrow head?
I had one thought of using multipe arcs so that they would overlap more or less as rotated, but this is a pretty crude workaround.
I have this double click class. which works fine. In order to clear grips after user finishes with double clicking,I added two lines (which shown on code below). But having those two line make code faulty. When ?
if user select a dynamic block with stretch grip on it, then double click on stretch grip trianlge. code geneaarte fatal error. Funny thing is code doesn't catch. it. Is there any other way to clear grips after double click ?
Here is code:
Imports Autodesk.AutoCAD.RuntimeImports Autodesk.AutoCAD.ApplicationServicesImports Autodesk.AutoCAD.EditorInputImports Autodesk.AutoCAD.DatabaseServicesPublic Class Main_0_Class Implements IExtensionApplication Public Sub Initialize() Implements IExtensionApplication.Initialize dblClickEven_Class.Start() End Sub [Code] .....
I have a dynamic block that I would like to insert via a lisp routine. When the routine is run from my menu I would like to select two points on the drawing area. Then I would like my dynamic block to be inserted at one of the points I selected and then I would like a specific "point" of my block to be stretched to the other point that I selected. I was wondering if this is possible with LISP? I have my old LISP program I wrote that draws a leader and then inserts my block but that was before I started working with dynamic blocks.
wld1r.dwg is my current block. It has some dynamic properties already. But I'm trying to add new properties that can be seen in my working test drawing wld1r-new.dwg
When using my code with "wld1r.dwg" you can see how everything behaves right now. Then open "wld1r-new.dwg" and note that the insertion point and a stretch point my default are in the same spot. Work with the two stretch points and look at how the block reacts.
Is there a way to have the grip stay in the correct position when the distance multiplier is .5? It seems to "get ahead" of the original location.
In the attached block, when I stretch the block with the grip, the grip ends up off the end point. Both actions have a .5 multiplier, with the left side having a rotation of 180 - so both sides stretch equally in opposite directions.
Also, there are 3 views with parameters (width/depth). Is there a way to get the user to enter in the sizes without having to select the size on each view? Basically a table that has a 'user input' field so the size selected changes everything at one time.
Is there a way, using dynamic blocks, to rotate a line around an ellipse, so that that leader is always centered with the center of the ellipse, but it actually starts at the circumfrence of the ellipse.
Like with a circle, you choose, rotation, using the center of the circle as the base point, and then setting your radius, and choosing the 'rotate' action. I need to do basically the same thing, but with an ellipse.
I've created a dynamic block with listed increments e.g. 36, 42, 48 inches width. The dynamic window block that comes with autocad has the same incremental stretch.
This block shows the tick marks as well as a the value in a dynamic input box. How can I have the value displayed in my custom dynamic block. All I have is the "tick" marks.
I have been working on a dynamic block that need to look like the attached jpg. Basically it needs to be able to stretch up to 50'-0" but in ten foot segments (part size limits) +/- an additional but in 1 foot increments.
I've got two blocks that will either array or stretch. But have not been able to get it to match the actual requirements. I have attached my current block attempt. Also as you can see from the jpg, the support posts usually alternate as well and I haven't figured that out yet either .