Search the Community
Showing results for tags 'autocad .net;inside blok'.
-
Exponential map algorithm gives bug in case of sphere, need solution to fix issue
Kalpesh30 posted a topic in .NET, ObjectARX & VBA
I am trying to decal sketch on mesh using exponential map. While generating exponential map, I am calculating plane by initial point on mesh and normal calculated on mesh by that point. then algorithm calculates nearest vertices from that point and traverse to them by edges. Then Edges are projected on plan with their original lengths. It works in most cases, But there is problems in case of sphere. the map is getting twisted. Do I need to do anything different for the spheres? Any ideas on how this issue can be resolved? Or has anybody done something similar using a different algorithm for exponential map? I have created below code while (i m_iExpPos = i; if (pVertex->m_iNeighbour > -1) { CVector vecPoint = pVertex->toVector() - pVertex->Neighbour()->toVector(); double len = vecPoint.norm(); CVector tmp = (pVertex->Neighbour()->normal() * -1) * vecPoint; vec = tmp * sketch.m_meshNorm; vec.unitize(); vec = vec * len; double u = vec.dot(sketch.m_meshX); pVertex->m_u = u + pVertex->Neighbour()->m_u; double v = vec.dot(yDir); pVertex->m_v = v + pVertex->Neighbour()->m_v; } else { vec = pVertex->toVector() - pnt; pVertex->m_u = vec.dot(sketch.m_meshX); pVertex->m_v = vec.dot(yDir); pVertex->m_Propogation = vec; } AddAdjacentUnvisitedVertices(pVertex, lstVerts); } pnt is one point where exponential map will start. Initially, lstVerts will contain vertices near to pnt. Gradually it will add adjacent vertices. I think problem is algo uses edge length as it is in exponential map. I think it need to be adjusted. I don't know how? To know about Exponential Map and Algorithm that i have used, please refer below links http://www.diva-portal.org/smash/get/diva2:331960/FULLTEXT01.pdf http://www1.cse.wustl.edu/~cmg/content/papers/sig2006tm/sig2006tm.pdf- 1 reply
-
- auto cad
- autocad .net;inside blok
-
(and 1 more)
Tagged with:
-
Hi I´m trying to get all objects inside a block, but I cannot find the objects. Can you help me? I´m using the VB.NET and have the following rotine: For Each acSSObj As SelectedObject In acSSet If Not IsDBNull(acSSObj) Then Dim acEnt As Entity = acTrans.GetObject(acSSObj.ObjectId, OpenMode.ForRead) If TypeOf acEnt Is BlockReference Then Dim oBr As BlockReference = CType(acEnt, BlockReference) ''I need to list all vertex of Polyline inside the block!!! End If End If Next Can you help me? Thanks a lot Márcio