ENCX SDK
5.5.0.926
|
Properties and methods for ENCX::S57Draw. More...
import"encxcom.idl";
Public Member Functions | |
HRESULT | SetManager ([in] IS57Manager *pMgr) |
Connect to a SENC. All the S-57 data to be drawn on the device context will be obtained from pMgr. More... | |
HRESULT | Draw ([in] OLE_HANDLE lHDC) |
Draw the chart to the specified device context. More... | |
HRESULT | SetDisplayScale ([in] LONG nDisplayScale, [in] IPixelPoint *ipPixelPt) |
Set the nominal scale of the chart. Suitable for display to the user, but not for precise calculations. More... | |
HRESULT | CalculateNewDisplayScale ([out] VARIANT_BOOL *pbAllowed, [out] LONG *pnScaleOut, [in] LONG nScaleOld, [in] LONG nChange, [in] LONG nSmallestChangeAllowed) |
Obtain the sensible next scale in the specified direction. More... | |
HRESULT | SetDrawLayerCallback ([in] enum S57CallBackDrawAction callBackDrawAction, [in] IS57ProductAndUsage *iproductAndUsage, [in] BYTE Layer) |
Insert a callback into the drawing sequence. More... | |
HRESULT | SetPosition ([in] IGeoPoint *geoPt, [in] IPixelPoint *pixelPt, [out, retval] VARIANT_BOOL *bRes) |
Set the geographical position at the specified pixel position on the drawing surface. More... | |
HRESULT | SetPositionAndScale ([in] IGeoRect *geoRect, [out, retval] VARIANT_BOOL *bRes) |
Set the geographical position and scale so that the specified rectangle just fits on the drawing surface. More... | |
HRESULT | SetDirectionOfUp ([in] DOUBLE degrees, [in] IPixelPoint *ipPixelPt, [out, retval] VARIANT_BOOL *pVal) |
The geographical orientation of the drawing surface. More... | |
HRESULT | FeaturesAtPoint ([in] IPixelPoint *pixelPt, [out, retval] IS57DrawnFeatures **pVal) |
HRESULT | AdjustAreaSymbolOffsets ([in] LONG cx, [in] LONG cy) |
Call with the offset of each scrolling action. More... | |
HRESULT | SetPositionAndScaleExact ([in] IGeoRect *geoRect, [out, retval] VARIANT_BOOL *bRes) |
Set the geographical position and scale so that the specified rectangle exactly. The corners of the drawing surface will correspond to the corners of the GeoRect. Use with caution - this method allows you to create some unlikely shaped charts! More... | |
HRESULT | GetSize ([out, retval] IPixelSize **sz) |
The area inside the rectangle (0,0) to (Size.Width,Size.Height) will be drawn. More... | |
HRESULT | SetSize ([in] IPixelSize *sz) |
The area inside the rectangle (0,0) to (Size.Width,Size.Height) will be drawn. More... | |
HRESULT | DepthAtPoint ([in] IPixelPoint *pixelPt, [out] DOUBLE *depthInMetres, [out, retval] VARIANT_BOOL *succeeded) |
Get the depth at a pixel position within the view. More... | |
HRESULT | HighlightFeature ([in] IS57FeatureIdentifier *featureId, [in] VARIANT_BOOL bClear) |
Highlight the feature (true to clear existing highlights, false to add the feature to the ones already highlighted) More... | |
HRESULT | HighlightSounding ([in] IS57FeatureIdentifier *featureId, [in] double depthMetres, [in] VARIANT_BOOL bClear) |
Highlight the sounding (true to clear existing highlights, false to add the sounding to the ones already highlighted) More... | |
HRESULT | SetVPFManager ([in] IVPFManager *pMgr) |
Connect to a VPF chart folder. All the VPF data to be drawn on the device context will be obtained from pMgr. More... | |
HRESULT | VPFFeaturesAtPoint ([in] IPixelPoint *pixelPt, [out, retval] BSTR *pXML) |
Return XML describing the VPF features at a specified point. More... | |
HRESULT | VPFCoveragesAtPoint ([in] IPixelPoint *pixelPt, [out, retval] BSTR *pXML) |
Return XML describing the VPF coverages at a specified point. More... | |
Properties | |
LONG | DisplayScale [get] |
The nominal scale of the chart. Suitable for display to the user, but not for precise calculations. More... | |
IGeoPix | GeoPix [get] |
Obtain the geopix. More... | |
IGeoPoint | PositionOfCentre [get] |
Obtain the geographical position of the centre of the drawing surface. More... | |
IS57DisplaySettings | DisplaySettings [get, set] |
The display settings control the symbolisation (drawing style) and what types of object are drawn or excluded from the drawing. More... | |
DOUBLE | PixelSizeMetres [get, set] |
The nominal size of a pixel. More... | |
DOUBLE | DirectionOfUp [get] |
The geographical orientation of the drawing surface. More... | |
IGeoRect | GeoExtent [get] |
The geographical rectangle of the drawing surface. More... | |
IDisplayPalette | DisplayPalette [get, set] |
The colour scheme for the chart. Use to draw the chart with lower luminance for twilight and night viewing. More... | |
VARIANT_BOOL | ShowPreviousCells [get, set] |
Draw the S-57 cells using the previous updates. Off by default. More... | |
S57Projection | ProjectionType [get, set] |
Projection (Cylindrical, Mercator or PolarStereographic) More... | |
ScaleBarUnits | Scalebar [get, set] |
The units for the scalebar. More... | |
VARIANT_BOOL | DrawGrid [get, set] |
Set to true to draw a simple geodetic grid on top of S-57 data (deprecated - use GridDisplaySettings instead) More... | |
IWVSDisplaySettings | WVSDisplaySettings [get, set] |
The display settings for single file WVS. More... | |
IGridDisplaySettings | GridDisplaySettings [get, set] |
The display settings for the grid. More... | |
DWORD | BackgroundColour [get, set] |
Get background colour. More... | |
IVPFDisplaySettings | VPFDisplaySettings [get, set] |
The VPF display settings to control drawing. More... | |
SBDetailedMode | ScalebarDetailedMode [get, set] |
Get scroll bar behaviour mode when display scale is less than 1:8,000. More... | |
Properties and methods for ENCX::S57Draw.
Definition at line 3680 of file encxcom.idl.
HRESULT IS57Draw::AdjustAreaSymbolOffsets | ( | [in] LONG | cx, |
[in] LONG | cy | ||
) |
Call with the offset of each scrolling action.
Adjusts the origin used when filling an area with symbols.
If AdjustAreaSymbolOffsets is used, then area fill symbols will scroll with the area features.
If AdjustAreaSymbolOffsets is not used, then area fill symbols will be fixed with respect to the drawing surface and will appear to be moving backwards in relation to the area features.
HRESULT IS57Draw::CalculateNewDisplayScale | ( | [out] VARIANT_BOOL * | pbAllowed, |
[out] LONG * | pnScaleOut, | ||
[in] LONG | nScaleOld, | ||
[in] LONG | nChange, | ||
[in] LONG | nSmallestChangeAllowed | ||
) |
Obtain the sensible next scale in the specified direction.
The S57Draw will display the S-57 data at any scale. However this method provides scales that are typically as expected by a mariner.
Positive nChange values mean zooming in. Negative means zoom out. A value of 1 indicates zooming by one "notch", 2 by notches and so on.
The first out parameter (pbAllowed) is whether or not this calculation succeeded in producing a valid output scale. The second output parameter (pnScaleOut) is the suggested scale.
The scales output by CalculateNewDisplayScale are 1:1000, 1:2000, 1:4000, 1:5000, 1:7500 and similarly for other decades.
CalculateNewDisplayScale is a helper function. It does not affect the state of the S57Draw.
HRESULT IS57Draw::DepthAtPoint | ( | [in] IPixelPoint * | pixelPt, |
[out] DOUBLE * | depthInMetres, | ||
[out, retval] VARIANT_BOOL * | succeeded | ||
) |
Get the depth at a pixel position within the view.
HRESULT IS57Draw::Draw | ( | [in] OLE_HANDLE | lHDC | ) |
Draw the chart to the specified device context.
HRESULT IS57Draw::FeaturesAtPoint | ( | [in] IPixelPoint * | pixelPt, |
[out, retval] IS57DrawnFeatures ** | pVal | ||
) |
HRESULT IS57Draw::GetSize | ( | [out, retval] IPixelSize ** | sz | ) |
The area inside the rectangle (0,0) to (Size.Width,Size.Height) will be drawn.
HRESULT IS57Draw::HighlightFeature | ( | [in] IS57FeatureIdentifier * | featureId, |
[in] VARIANT_BOOL | bClear | ||
) |
Highlight the feature (true to clear existing highlights, false to add the feature to the ones already highlighted)
HRESULT IS57Draw::HighlightSounding | ( | [in] IS57FeatureIdentifier * | featureId, |
[in] double | depthMetres, | ||
[in] VARIANT_BOOL | bClear | ||
) |
Highlight the sounding (true to clear existing highlights, false to add the sounding to the ones already highlighted)
HRESULT IS57Draw::SetDirectionOfUp | ( | [in] DOUBLE | degrees, |
[in] IPixelPoint * | ipPixelPt, | ||
[out, retval] VARIANT_BOOL * | pVal | ||
) |
The geographical orientation of the drawing surface.
HRESULT IS57Draw::SetDisplayScale | ( | [in] LONG | nDisplayScale, |
[in] IPixelPoint * | ipPixelPt | ||
) |
Set the nominal scale of the chart. Suitable for display to the user, but not for precise calculations.
Set nominal scale of the chart. Suitable for display to the user, but not for precise calculations. The pixel position is the pixel position where the relationship between geographic position and pixel position is constant. When zooming in and out with the mouse wheel or a hot key and the mouse is over the chart using the mouse position is a good idea! Use -1,-1 to default to centre of the view.
HRESULT IS57Draw::SetDrawLayerCallback | ( | [in] enum S57CallBackDrawAction | callBackDrawAction, |
[in] IS57ProductAndUsage * | iproductAndUsage, | ||
[in] BYTE | Layer | ||
) |
Insert a callback into the drawing sequence.
Results in _IS57DrawEvents::OnDrawLayer() being called during the drawing process.
callBackDrawAction | When the callback should occur (before the layer is drawn, after it, or both) |
iproductAndUsage | The type of S-57 (e.g. ENC) and the intended usage band within that product (e.g. a navigational purpose within the ENC product). |
Layer | There are 10 layers of drawing within a single product and usage. Layer 0 is the bottom, Layer 9 is the top. |
HRESULT IS57Draw::SetManager | ( | [in] IS57Manager * | pMgr | ) |
Connect to a SENC. All the S-57 data to be drawn on the device context will be obtained from pMgr.
HRESULT IS57Draw::SetPosition | ( | [in] IGeoPoint * | geoPt, |
[in] IPixelPoint * | pixelPt, | ||
[out, retval] VARIANT_BOOL * | bRes | ||
) |
Set the geographical position at the specified pixel position on the drawing surface.
HRESULT IS57Draw::SetPositionAndScale | ( | [in] IGeoRect * | geoRect, |
[out, retval] VARIANT_BOOL * | bRes | ||
) |
Set the geographical position and scale so that the specified rectangle just fits on the drawing surface.
HRESULT IS57Draw::SetPositionAndScaleExact | ( | [in] IGeoRect * | geoRect, |
[out, retval] VARIANT_BOOL * | bRes | ||
) |
Set the geographical position and scale so that the specified rectangle exactly. The corners of the drawing surface will correspond to the corners of the GeoRect. Use with caution - this method allows you to create some unlikely shaped charts!
HRESULT IS57Draw::SetSize | ( | [in] IPixelSize * | sz | ) |
The area inside the rectangle (0,0) to (Size.Width,Size.Height) will be drawn.
HRESULT IS57Draw::SetVPFManager | ( | [in] IVPFManager * | pMgr | ) |
Connect to a VPF chart folder. All the VPF data to be drawn on the device context will be obtained from pMgr.
HRESULT IS57Draw::VPFCoveragesAtPoint | ( | [in] IPixelPoint * | pixelPt, |
[out, retval] BSTR * | pXML | ||
) |
Return XML describing the VPF coverages at a specified point.
HRESULT IS57Draw::VPFFeaturesAtPoint | ( | [in] IPixelPoint * | pixelPt, |
[out, retval] BSTR * | pXML | ||
) |
Return XML describing the VPF features at a specified point.
|
getsetproperty |
Get background colour.
Set background colour.
|
get |
The geographical orientation of the drawing surface.
|
getset |
The colour scheme for the chart. Use to draw the chart with lower luminance for twilight and night viewing.
|
get |
The nominal scale of the chart. Suitable for display to the user, but not for precise calculations.
|
getset |
The display settings control the symbolisation (drawing style) and what types of object are drawn or excluded from the drawing.
|
getset |
Set to true to draw a simple geodetic grid on top of S-57 data (deprecated - use GridDisplaySettings instead)
|
getproperty |
The geographical rectangle of the drawing surface.
The result returned is a snapshot of the extent rather than a live reference to the internal state of the S57Draw object. in .NET ReferenceEquals(draw.GeoExtent, draw.GeoExtent) == false
|
get |
Obtain the geopix.
The IGeoPix can be used to draw geo-referenced information on top of the S-57 data and to obtain a geographical position from a pixel position.
|
getset |
The display settings for the grid.
|
getset |
The nominal size of a pixel.
The approximate distance on the ground can be obtained from PixelSizeMetres * IGeoPix::DisplayScale().
|
get |
Obtain the geographical position of the centre of the drawing surface.
The result returned is a snapshot of the centre position rather than a live reference to the internal state of the S57Draw object. in .NET ReferenceEquals(draw.PositionOfCentre, draw.PositionOfCentre) == false
|
getset |
Projection (Cylindrical, Mercator or PolarStereographic)
|
getset |
The units for the scalebar.
|
getset |
Get scroll bar behaviour mode when display scale is less than 1:8,000.
Set scroll bar behaviour mode when display scale is less than 1:8,000.
|
getsetproperty |
Draw the S-57 cells using the previous updates. Off by default.
Change to true to draw each cell as it was before that cell was last updated.
|
getset |
The VPF display settings to control drawing.
|
getset |
The display settings for single file WVS.