var Pos_Start = null;
var pAnalysis = null;
var result = null;
var FloodAnalysisGroupID = "";
var InEdit = false;
var Step = -1;
var pCircle = null;
function ButtonFlood_Click() {
pAnalysis = sgworld.Analysis;
FloodAnalysisGroupID = sgworld.ProjectTree.FindItem("洪¨¦水?分¤?析?");
if (FloodAnalysisGroupID == "")
FloodAnalysisGroupID = sgworld.ProjectTree.CreateGroup("洪¨¦水?分¤?
析?");
Step = 0;
InEdit = !InEdit;
if (InEdit)
sgworld.Window.SetInputMode(1, "", false);
else {
sgworld.Window.SetInputMode(0, "", false);
return;
}
sgworld.AttachEvent("OnLButtonDown", OnLButtonDown);
sgworld.AttachEvent("OnFrame", OnFrame);
}
function OnLButtonDown(Flags, X, Y) {
if (InEdit) {
var worldPosition = sgworld.Window.PixelToWorld(X, Y, 0);
if (Step == 0) {
Pos_Start = worldPosition.Position;
Step++;
}
else if (Step == 1) {
var position = worldPosition.Position;
var radius = Pos_Start.DistanceTo(position);
if (pCircle != null) {
sgworld.Creator.DeleteObject(pCircle.ID);
pCircle = null;
}
pAnalysis.CreateFloodSingleWaterRise(Pos_Start.X, Pos_Start.Y,
radius, 3, 3, FloodAnalysisGroupID, "淹¨ª 没?水?面?");
Step = 0;
}
}
}
function OnFrame() {
if (InEdit) {
if (Step == 1) {
var worldPosition =
sgworld.Window.PixelToWorld(sgworld.Window.GetMouseInfo().X,
sgworld.Window.GetMouseInfo().Y, 0);
var position = worldPosition.Position;
var radius = Pos_Start.DistanceTo(position);
if (pCircle != null) {
sgworld.Creator.DeleteObject(pCircle.ID);
pCircle = null;
}
pCircle = sgworld.Creator.CreateCircle(Pos_Start, radius, "-
- 1
- 2
前往页