I'm looking to change an elevation of a survey point within a drawing. I can see where it is possible to manually unlock the points from the Survey Database to allow the user to edit the point. I'm not seeing a method or property in the API Help for 2013 to do the unlocking with code. Is this possible?
Also is it possible to convert a Survey Point to a regular Cogo Point through the code? Or do I have to delte the point and then recreate it as a COGO point? I think this will be my work around if the above doesn't work.
The best way to change the elevation of a survey point is via the survey command language. Go to your survey toolspace and right click on you survey network. Then select survey command.
The command is MOD EL (point number) (elevation) such as MOD EL 100 6.453
At the moment very limited Survey features are exposed through .NET API and I don't see any API which can unlock and let you update properties of a Survey Point. Looking into COM API help, I find we can access / read the elevation; IAeccSurveyPoint:: Elevation Property -> Gets the elevation value of the Point.
We can use IAeccSurveyNetwork:: AddPointsToDrawing Method which Adds the Points in the Network to the drawing, but it seems adding all the points in a specific network.
One can also access the point information as a CogoPoint, but if the point is a survey point the point changing the elevation doesn't work.
Did you try the suggestion made by Nicholas on using the survey command language and the MOD EL command ? I can log a wish list for this feature in .NET API when we expose the Survey functionalities in the coming days.
No, I'm not looking for a UI solution to the problem. This isn't a mission critical feature. It just would have been nice if the user could modify the data for the cross sections and then if they needed to start over have the changes they made to the profiles reflected in the original survey points. I'm not really interested in going all the way back into the survey database to make sure it's open and set to the correct database. It would be nice if the point had the information and the API went back and did most of the work.