C# 클래스 MapAround.UI.WinForms.GeometryEditor

Represents a geometry editor.
파일 보기 프로젝트 열기: gkrsu/maparound.core

Private Properties

프로퍼티 타입 설명
drawActiveNode void
drawNodes void
insertNodeAt void
recalcActiveElements void
removeNodeAt void

공개 메소드들

메소드 설명
ClearHistory ( ) : void

Clears the history of edit operations.

DrawEditingGeometry ( Graphics g, MapToClientDelegate mapToClient, int offsetX, int offsetY ) : void

Draws editing geometry.

GetSecondaryNodes ( ) : IEnumerable

Gets secondaty nodes of the editing feature. Secondary nodes are nodes placed at the middle points of the feature segments.

InsertPatch ( int patchIndex, IEnumerable coordinates ) : void

Inserts a new coordinate patch into the editing geometry.

Redo ( ) : void

Redo edit action.

RemoveActiveNode ( ) : void

Removes the active node.

RemoveActivePatch ( ) : void

Removes the active patch.

RemovePatch ( int patchIndex ) : void

Removes specified coordinate patch.

ReplaceGeometry ( IGeometry newGeometry ) : void

Replaces currently editing geometry with the other one.

TryActivateNodeAt ( ICoordinate coordinate, double nodeSize ) : bool

Tries to activate a node at the specified position.

TryAddNode ( ICoordinate coordinate ) : bool

Tries to add a new node into editing geometry.

Undo ( ) : void

Undo edit action.

UpdateActiveNodePosition ( ICoordinate coordinate, bool commitIntoUndoList ) : bool

Updates the position of the active node with the specified value

비공개 메소드들

메소드 설명
drawActiveNode ( Graphics g, MapToClientDelegate MapToClient, Color color, int offsetX, int offsetY ) : void
drawNodes ( IEnumerable nodes, Graphics g, MapToClientDelegate MapToClient, Color color, int offsetX, int offsetY ) : void
insertNodeAt ( int patchIndex, int coordinateIndex, ICoordinate coordinate ) : void
recalcActiveElements ( ) : void
removeNodeAt ( int patchIndex, int coordinateIndex ) : void

메소드 상세

ClearHistory() 공개 메소드

Clears the history of edit operations.
public ClearHistory ( ) : void
리턴 void

DrawEditingGeometry() 공개 메소드

Draws editing geometry.
public DrawEditingGeometry ( Graphics g, MapToClientDelegate mapToClient, int offsetX, int offsetY ) : void
g System.Drawing.Graphics A System.Drawing.Graphics instance where to draw the geometry
mapToClient MapToClientDelegate A method performing map-to-screen conversion
offsetX int An X offset of geometry in pixels
offsetY int A Y offset of geometry in pixels
리턴 void

GetSecondaryNodes() 공개 메소드

Gets secondaty nodes of the editing feature. Secondary nodes are nodes placed at the middle points of the feature segments.
public GetSecondaryNodes ( ) : IEnumerable
리턴 IEnumerable

InsertPatch() 공개 메소드

Inserts a new coordinate patch into the editing geometry.
public InsertPatch ( int patchIndex, IEnumerable coordinates ) : void
patchIndex int A zero-based index of patch
coordinates IEnumerable A coordinates of inserted patch
리턴 void

Redo() 공개 메소드

Redo edit action.
public Redo ( ) : void
리턴 void

RemoveActiveNode() 공개 메소드

Removes the active node.
public RemoveActiveNode ( ) : void
리턴 void

RemoveActivePatch() 공개 메소드

Removes the active patch.
public RemoveActivePatch ( ) : void
리턴 void

RemovePatch() 공개 메소드

Removes specified coordinate patch.
public RemovePatch ( int patchIndex ) : void
patchIndex int An zero-based index of patch
리턴 void

ReplaceGeometry() 공개 메소드

Replaces currently editing geometry with the other one.
public ReplaceGeometry ( IGeometry newGeometry ) : void
newGeometry IGeometry A new instance of IGeometry
리턴 void

TryActivateNodeAt() 공개 메소드

Tries to activate a node at the specified position.
public TryActivateNodeAt ( ICoordinate coordinate, double nodeSize ) : bool
coordinate ICoordinate A coordinate of node to be activated
nodeSize double A size of node
리턴 bool

TryAddNode() 공개 메소드

Tries to add a new node into editing geometry.
public TryAddNode ( ICoordinate coordinate ) : bool
coordinate ICoordinate An instance of the ICoordinate to add
리턴 bool

Undo() 공개 메소드

Undo edit action.
public Undo ( ) : void
리턴 void

UpdateActiveNodePosition() 공개 메소드

Updates the position of the active node with the specified value
public UpdateActiveNodePosition ( ICoordinate coordinate, bool commitIntoUndoList ) : bool
coordinate ICoordinate New position of the active node
commitIntoUndoList bool A value indicating whether current update should be commited into undo list
리턴 bool