I am wanting to use autolisp to access the text in a MTEXT entity. assoc(1) gives me the first bit of text, but not the rest.Is there a way to use assoc to access each of a number of matches or do I need to write my own routine to find all the 1's?
I am going to collect objectid's of the moved items in drawing after they moved to destination. So I wrote an event to monitor move command , by using object modified event handler. when I run below code for every entity it collects 2 object id. One before move and one after move. Is there any way to just collect object ids after they moved?
Class EVENTS Dim MyDwg As Document = Application.DocumentManager.MdiActiveDocument Dim Myed As Editor = MyDwg.Editor Dim Mydb As Database = MyDwg.Database Dim Myobjidcoll As ObjectIdCollection
I do have a problem on SPLIT feature. I cannot seem to apply SPLIT SOLID into an entity/object but, on the other object I am able to apply SPLIT SOLID.
Sketch created using MultiBody and would like to make use of "Make Components" to create an assembly as well as parts.
I have attach a zip file of the ipt. I am currently using Autodesk Inventor Suite 2012.
Is there a way to access AEC object (AEC_WALL etc.) properties from RealDWG? I am able to get the class name AecDbWall. And even the extents of the entity.There are some Aec*.dll files in the RealDWG folder but I am not sure what to use to get the properties of Wall,window.I'm using visual C++. I have installed the object enablers of Architecture Structure Drawing, MEP, and also of Civil.
I have a program in C# where i am trying to access a sub-object which is of type Connectors/fasteners.
In a drawing, I have an object with class (PnPClassname) P3dConnector, and when I click on it's red circle with <ctrl> pressed, I access an object with class (PnPClassname) BoltSet. I have added the event oDatabase.ObjectModified, but this only access the P3dConnector-object, not the BoltSet-object. See the image and attached file.
How can i access this sub-object? I have tried to loop through prompted result set using SelectAll. The P3dConnector-object is listed but not the BoltSet-object.
I'm upgrading some older COM based code to work in VB.Net with Civil 3D 2012. The app iterates through all of the Alignment objects, finding the ones with SuperEleveation, and places the names in a listbox. The user can select one or more of the alignments from the list to have the SuperElevation slope values modified.
The problem I am having is when I get the alignment object to update I get an execption that the object is locked. It's probably something simple but I'm at a loss to where to go next.Here as a brief code snippet:
' Sub1 is called to find all of the alignment objects with SuperElevation Sub Sub1() Dim objCol As Autodesk.AutoCAD.DatabaseServices.ObjectIdCollection Dim objID As Autodesk.AutoCAD.DatabaseServices.ObjectId Dim tm As Autodesk.AutoCAD.DatabaseServices.Transaction Dim myAlg as Alignment [code]....
I want to put type on a perfect circular path.But first I need to stretch the type so it is longer vertically.Stretching type and using it as normal is easy.But how in the world do I use the stretched type on a path?
When dealing with vector, it is just to click in image with "pick tool" to appear a tool bar where object align/distribution is available.
But when dealing with raster, this tool isn't available. The only way I found is through "menu=> objects=>align". To raster images, is there similar vector tool bar to access direct object align/distribution?
In my plug-in I have some datagridview to show alignment data of all alignments in drawing.
I have a button called (regen) to update data in these datagridviews. I read again database drawing and re-source again datagridview. (method "upload_all")
I have read some posts and blogs about this: [URL] ....
and about overrule: [URL] ....
But I don´t understand almost.
I only want to execute method "upload_all" if some alignment is modified in the drawing.
Also, I would like to do it if some alignment is just created or deleted.
Autocad Civil 3D 2014 +SP1 Quad Core Intel i7 3770-cpu 3.40Ghz. ssd samsung 840 pro 512gb+ssd samsung 840 pro 256 gb+1tb hdd 32gb RAM 1600 Mhz. nVidia Quadro 2000. Win 7 Pro 64bit
I am using AutoCAD Architecture 2011. I have been working in a drawing for several weeks on casework. I have multiple viewports on my sheet layouts. Up until now I was able to select the viewports and move them or make them bigger or smaller with grip edit but now although I see them I can't select them or even delete them. I can double click within the viewport and change the scale or modify the items in the viewport but I can't do anything to the viewport in paper space.
I have turned all the layers on and made sure that none of them were locked. I have tried regen. I have opened a new tab and tried to create new viewports and I have the same problem. I can create them but once I do I can't modify / move them.
Beyond that when I switch from model to paper space it takes about 5 min. sometimes longer to switch and the same thing when I save it or close it. Is that normal?
I have a group of classes that essentially implement the Model View Controller pattern. The view is a custom control contained in a PaletteSet. The Model is a class that wraps the ObjectID of a given block. I've used these classes to create a replacement for the Properties tool in AutoCAD (2011). Basically the UI can be used to edit the properties of a Dynamic Block. But I apply my own rules and behaviors to the UI.
I had no problems until I added support for the View to be updated when the block is modified (say by dragging to increase a length property). To do this I handle the Modified event of the block. After the block is modified, some rules are evaluated. If the rules result in changes to the block's properties, these changes are applied. This last part is where I'm having trouble.
When the "Rule Evaluation" code is invoked because of changes to the view (WinForms Controls), I am able to update the block's Properties using the following code without issue:
Public Shared Function SetParameter(ByVal BlockID As ObjectId, ByVal ParameterName As String, ByVal Value As Double) As Boolean Using dl As DocumentLock = Application.DocumentManager.MdiActiveDocument.LockDocument(DocumentLockMode.ProtectedAutoWrite, Nothing, Nothing, True) Using myTrans As Transaction = BlockID.Database.TransactionManager.StartTransaction Dim myBRef As BlockReference = BlockID.GetObject(OpenMode.ForWrite) For Each myDynamProp As DynamicBlockReferenceProperty In myBRef.DynamicBlockReferencePropertyCollection If myDynamProp.PropertyName.Equals(ParameterName, StringComparison.OrdinalIgnoreCase) Then myDynamProp.Value = Value myTrans.Commit() Return True End If Next Return False End Using End Using End Function
However, when this same code is invoked as a result of the BlockReference Modified event, AutoCAD completely crashes the momment the transaction.Commit() method is called. I've attempted to catch the exception causing the crash and role back the transaction, but AutoCAD simply exits and displays the error (Error handler re-entered. Exiting now.) and no exception is caught. Note that I do not use the BlockReference instance passed to the Modified event handler. Instead I store an ObjectID instance elsewhere which is consistently used to read/write the block.
Is there something I must do before commiting a transaction when using the Modified event of BlockReference? I checked, and the same "Main Thread" is executing whether the code is invoked from a UI event or the Modified event. I tried calling the Close method, which is attributed as Obsolete, on the BlockReference object before executing the transaction without any success.
Upgraded to 2012 yesterday. Today I've noticed that WIPEOUTs no longer have grips when they are selected. It also seems as though they cannot be modified via the STRETCH command.
All I can think of off the top of my head is to explode the wipeout, isolate the elements, reassemble them as a polyline, modify as desired and then recreate the wipeout from the polyline. But that's hardly efficient.
No grips wasn't too bad, but not responding to a stretch seems stupid. We use wipeouts in many of our blocks. We may take one block and modify it to create another similar block. Recreating the wipeouts because they wouldn't stretch or couldn't be easily modified to adapt to the new geometry will be a real waste of time.
Infrastructure DSP '14 / Product DSP '14 / Vault Professional 2014 Dell Precision T1650 Windows 7 Professional SP1 64-bit Intel E3-1270 V2 3.5GHz / 32G RAM Nvidia Quadro 2000, Driver 331.82 Space Navigator, Driver Version 6.17.7
I created an alignment in one file. Then in another file I data shortcut that alignment in. From there I created an existing ground profile using that alignment. Later I modified the alignment. When I go into my profile drawing containing the existing ground profile, it did not update. I have had this happen on several projects and I can not figure out why it is not updating. My station range on the existing ground profile is set to automatic.
I used to do this all the time in 2012 and never had this problem. I am using 2013 with the latest update..
I need to generate a disc cam with a modified sine profile but there is no motion function of that name in the Disc Cam Component Generator. How to generate a modified sine disc cam?
just a general question regarding contour labelling. Does it refresh automatically after I modified the labelling setting? My experience is no. Here is what I did, given an existing surface. Go to Surfaces -> Add Surface Labels -> Contour-Multiple at Intervals, I gave a decent interval, labels the entire surface with a few runs. Later on I decided to say hide the contour label lines, so I would go to Settings ->right click on Surface->Contour Labelling Defaults->set Display Contour Label Line to False, click Apply. So this setting will affect all the contour labelling created thereafter, but does it change the contour labels that I already created? If not, how can I change those labels?
I have just recently upgraded to 2013.I have one color in particular that use dto be grey - now it is red. I have repaired the appearance so it looks correct in a part. I was able to save this backto the library, overwriting the original. This is all good. I am unable to find out how to push this updated appearance to all parts in an assembly. I used to be able to do this with the update styles tool.
The company I work for produce drawings for various types of fabrication.
Using Inventor I have a drawing border in which tolerance values change depending on the type of fabrication to be produced. The type of fabrication (0,1,2,or 3) is designated by a custom property entered during part/fab model creation.
This property may change depending on various production factors. The issue I have is how do I get the border to recognize this potential change in fab type and populate the tolerance fields with the necessary information?
I am having an issue running AutoCAD LT 2011 on a Windows 7 Pro 64-bit. If I have orthographic dimensions on the drawing, AutoCAD crashes if I try to move, modify, or delete the dimensions. Recovery does not work. I am stuck with the dimensions once they are placed because if I touch them, the program crashes.
I do not know if this is important but I will include it anyway: this does not happen with older drawings that were created under older versions of AutoCAD LT. It only happens with ortho dimensions created in LT 2011.
I have applied all the latest patches, drivers for the video card, and even tried opening the drawings in 32-bit mode. Nothing seems to work.
My system is a Dell Precision T3500 Windows 7 Professional SP1 64-bitIntel Xeon Dual Core 2.53GHz cpu12GB ramNvidia Quadro 4000 running Nvidia driver version 265.70