.NET
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic to the Top
- Bookmark
- Subscribe
- Printer Friendly Page
Counting instances of an image
Options
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
104 Views, 4 Replies
05-29-2012 01:45 AM
Hi there,
I can find which images are attached to my current drawing with the following code. However, I don't know how to find out how many times they are attached.
Anybody ?
Using tr As Transaction = db.TransactionManager.StartTransaction
Try
Dim nod As DBDictionary
Dim imageDict As DBDictionary
Console.WriteLine("Getting ACAD_IMAGE_DICT DB dictionary")
nod = CType(tr.GetObject(db.NamedObjectsDictionaryId, OpenMode.ForRead, False), DBDictionary)
imageDict = CType(tr.GetObject(nod.GetAt("ACAD_IMAGE_DICT"), OpenMode.ForRead, False), DBDictionary)
For Each dicentry As DBDictionaryEntry In imageDict
Dim myRasterImgDef As RasterImageDef = CType(tr.GetObject(CType(dicentry.Value, ObjectId), OpenMode.ForRead), RasterImageDef)
If myRasterImgDef.IsLoaded Then
Console.WriteLine("Found: " & myRasterImgDef.ActiveFileName)
' NEED TO COUNT INSTANCES HERE
Else
Console.WriteLine("Not found: " & myRasterImgDef.SourceFileName)
End If
Next
tr.Commit()
Catch ex As Exception
System.Windows.Forms.MessageBox.Show(ex.ToString, "Configurator", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Stop)
End Try
End UsingThanx in advance
Solved! Go to Solution.
Re: Counting instances of an image
Options
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
05-29-2012 02:37 AM in reply to:
btmsoftware
You need to search for raster reference entities of type RasterImage. There are two options I know for this, depending on your requirements: 1. Use Editor.SelectAll(), passing in a SelectionFilter with the appropriate dxf code. This is easiest but will only work in the current layout. Note: You might also need to zoom extents for this to work, i can't remember if you need to. 2. Iterate your block table records looking for RasterImage entities, using a counter. Advantage with this approach is that you can iterate your model space as well as all of your paper space block table records - i.e. you will get all of them.
Re: Counting instances of an image
Options
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
05-29-2012 03:11 AM in reply to:
Artvegas
Will give option 2 a shot, seems the most appropriate indeed.
If you happen to have an example for this iteration ,great, if not, I'll figure it out by myself ;-)
Re: Counting instances of an image
Options
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
05-29-2012 04:41 AM in reply to:
btmsoftware
Hi
Can you try DevBlog solution "Identifying number times a Raster Image is used in a drawing"
Thanks
Virupaksha aithal
Autodesk Devloper Network
Virupaksha Aithal KM
Developer Technical Services
Autodesk Developer Network
Re: Counting instances of an image
Options
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
05-29-2012 05:00 AM in reply to:
Virupaksha.aithal
Exactly what I needed, thanx a lot
