Some minor errors in. NET Help found during development using ArcGIS Engine

Source: Internet
Author: User

During my internship in the company over the past few days, I found some minor problems when I used ArcGIS Engine for project query and help, which caused me to spend a long time searching for the interfaces and classes I needed, so that I could easily write them down. (The Module I wrote has a Function Based on DEM earthwork calculation, using C #)

1.

In the namespace ESRI. ArcGIS. analyst3d, rastersurface implements the following interface:

Interfaces Description
Ifunctionalsurface (geometry) Provides access to information about the functional surface, generating heights given X, Y locations. Also see ifunctionalsurface2.
Ifunctionalsurface2 (geometry) Provides access to Members that allow changes to be made to the interpolation domain, in addition to the ifunctionalsurface members.
Irastersurface Provides access to Members that manipulate and analyze a raster surface.
Isurface (Geodatabase) Provides access to Members that control surfaces.

Description of isurface. getvolume and other methods under rastersurfaceclass

Getsurfacearea Returns the tin's area measured on its surface abve or below an input Z value.
Getvolume Returns the tin's volume abve or below an input Z value.

The above only shows the surface area and volume of the returned tin data. I wonder if I need to convert raster into Tin. Because of the large project-related data volume and 40 GB of data, efficiency was taken into consideration, if the conversion may be slow and unacceptable to users, related operations are performed under ArcMap. In actual use, raster is not required to be converted to Tin, I thought there should be related functions in rastersurface to get the surface area of the area corresponding to the raster layer and the volume related to a certain elevation. I will check the object model diagram of rastersurface: in the isurface interface implemented by rastersurface

Getsurfacearea (in referenceheight: Double, in type: esriplanereferencetype): double
Getvolume (in reference: Double, in type: esriplanereferencetype): double

Since there is no corresponding description, I tried to use and calculate the surface area and volume of tin data in the Code and can be directly calculated without the need to convert the format.

2.

Since a polygon parameter is required to pass in the calculation earthwork region, I searched for the Polygon-related parameters in rasterclass, So I queried ifunctionalsurface (geometry) and ifuncitonalsurface2 (geometry ).

Ifuncitonalsurface Interface

  Attribute or Method Description
Domain Surface-related classes
Z Z = f (x, y ).

Here, z is marked as an attribute. Actually, it is a method. Using X, Y is worth it to Z value.

[C #]
PublicDoubleGet_z (
DoubleX,
DoubleY
);

If you are familiar with the C # syntax, you should know that the attribute definition in C # Is

Public porperty {

Get {

....

}

Set {

....

}

}

You do not need to input parameters for attributes.

 

3.

Ifunctionsurface2 Interface

It inherits from ifunctionsurface.

In the rastersurface object model diagram, the ifuncitonalsurface. Domain attribute is read-only, while ifunctionalsurface2.domain is write-only. In help, the domain attribute of ifunctionalsurface and ifunctionalsurface2 is the same link.

When setting the domain attribute, it should be ifunctionalsurface2.domain _ 2 (write only) ifunctionalsurface2.domain (read-only)

 

(There are still some minor errors in the engine help documentation, which correspond to the object model diagram in actual use. It is most important to try it in the Code .)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.