Community
Civil 3D Customization
Welcome to Autodesk’s AutoCAD Civil 3D Forums. Share your knowledge, ask questions, and explore popular AutoCAD Civil 3D Customization topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How can I delete "SurfaceOperationAddBreakline"?

3 REPLIES 3
SOLVED
Reply
Message 1 of 4
joantopo
362 Views, 3 Replies

How can I delete "SurfaceOperationAddBreakline"?

Hi.

 

I would like remove(delete) all brealkine sets inluded in definition of surface.

 

  try
            {
                Document doc = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
                Database db = doc.Database;
                Editor ed = doc.Editor;

                //lock the document                

                using (DocumentLock docLock = doc.LockDocument())
                {
                    using (Transaction trans = db.TransactionManager.StartTransaction())
                    {
                        Autodesk.Civil.DatabaseServices.Surface sup = trans.GetObject(Id, OpenMode.ForWrite) as Autodesk.Civil.DatabaseServices.Surface;


                        //Operations in the SurfaceOperationCollection are in the order they are added to the Surface.
                        SurfaceOperationCollection OperationColl = sup.Operations;

                        for (int i = 0; i <= OperationColl.Count - 1; i++)
                        {
                            if (OperationColl[i].GetType().ToString() == "SurfaceOperationAddBreakline")
                            {
                                OperationColl.RemoveAt(i);
                                i--;
                            }

                        }

                        trans.Commit();
                    }//end using
                }//end lock

            }
            catch (System.Exception ex)
            {
                System.Windows.Forms.MessageBox.Show(ex.Message);
            }

 

However, I don´t understand how I can get type of Surface Operation..

This code line doesn´t work.

    if (OperationColl[i].GetType().ToString() == "SurfaceOperationAddBreakline")

 Help please.

 

Thank you for advance.

Autocad C3D 2019 SP3, 2020 & 2021
Intel I9 9900K with frontal watercooler alphacool eisbaer 360 (original fans mounted in pull)- 3 fans Corsair 120 ML PRO in push.
MOBO Gygabyte Z390 Aorus Master- Corsair RGB Vengeance 64GB RAM (4x16) CL16
Nvidia Quadro RTX 4000
Samsung 970 EVO PLUS 1TB (unit C). Samsung 970 PRO 512GB (for data)
Power Supply: Corsair TX850M PLUS


Descubre mi programa VisorNET para Civil 3D:
https://apps.autodesk.com/CIV3D/es/Detail/Index?id=appstore.exchange.autodesk.com%3avisornet_windows32and64%3aes
3 REPLIES 3
Message 2 of 4
Partha.Sarkar
in reply to: joantopo

Hi,

 

Try this -

 

// Get the TIN Surface       

TinSurface tinSurface = surfaceId.GetObject(OpenMode.ForWrite) asTinSurface;

 

// Lets try to Remove Breakline using RemoveAt(int)       

  tinSurface.BreaklinesDefinition.RemoveAt(0);


Did you check this post -

http://adndevblog.typepad.com/infrastructure/2013/09/removing-surface-breaklines-using-autocad-civil...

Thanks,

Partha Sarkar

 



Partha Sarkar
Developer Technical Services
Autodesk Developer Network

Message 3 of 4
joantopo
in reply to: Partha.Sarkar

I use this:

  Autodesk.Civil.DatabaseServices.TinSurface tinSurface = trans.GetObject(Id,OpenMode.ForWrite) as Autodesk.Civil.DatabaseServices.TinSurface;

 

It works.

Thank you for all.

 

Autocad C3D 2019 SP3, 2020 & 2021
Intel I9 9900K with frontal watercooler alphacool eisbaer 360 (original fans mounted in pull)- 3 fans Corsair 120 ML PRO in push.
MOBO Gygabyte Z390 Aorus Master- Corsair RGB Vengeance 64GB RAM (4x16) CL16
Nvidia Quadro RTX 4000
Samsung 970 EVO PLUS 1TB (unit C). Samsung 970 PRO 512GB (for data)
Power Supply: Corsair TX850M PLUS


Descubre mi programa VisorNET para Civil 3D:
https://apps.autodesk.com/CIV3D/es/Detail/Index?id=appstore.exchange.autodesk.com%3avisornet_windows32and64%3aes
Message 4 of 4
joantopo
in reply to: joantopo

I have another question:
Can I get ID or Name about Point Grups Definition? (tinSurface.PointGrupDefinition)  

Autocad C3D 2019 SP3, 2020 & 2021
Intel I9 9900K with frontal watercooler alphacool eisbaer 360 (original fans mounted in pull)- 3 fans Corsair 120 ML PRO in push.
MOBO Gygabyte Z390 Aorus Master- Corsair RGB Vengeance 64GB RAM (4x16) CL16
Nvidia Quadro RTX 4000
Samsung 970 EVO PLUS 1TB (unit C). Samsung 970 PRO 512GB (for data)
Power Supply: Corsair TX850M PLUS


Descubre mi programa VisorNET para Civil 3D:
https://apps.autodesk.com/CIV3D/es/Detail/Index?id=appstore.exchange.autodesk.com%3avisornet_windows32and64%3aes

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Rail Community


Autodesk Design & Make Report