"justify">} (orgIsInside && destIsInside) {. addPoint (points.get (i), infinity.get (i));
} else if (! orgIsInside && destIsInside) {(! MathUtil.isEqualWithEplsilon (points.get (i), crossingPt)) {. addPoint (crossingPt, infEdge);
}
} else if (! orgIsInside &&! destIsInside) {
} else {(! MathUtil.isEqualWithEplsilon (points.get (i), crossingPt)) {. addPoint (points.get (i), infinity.get (i));
}
. addPoint (crossingPt, false);
}
}
. points = p.points;. infinity = p.infinity;. values ​​= p.values;
}
int nextPointIndex (int i) {(i == points.size () - 1) {0;
} else {i +1;
}
}
int prevPointIndex (int i) {(i == 0) {points.size () - 1;
} else {i-1;
}
}
setTargetLine (float A, float B, boolean max) {
if (points.isEmpty ()) {= null;
}
(int i = 0; i
value = p.x * A + p.y * B;
. set (i, value);
}
extrList = new LinkedList ();. add (0); (int i = 1; i
(MathUtil.isEqualWithEplsilon (extr, values.get (i))) {(values.get (i)> extr) {. add (i);
} else {. addFirst (i);
}
} else if (extr
}
} else {extr = values.get (extrList.getLast ());
(MathUtil.isEqualWithEplsilon (extr, values.get (i))) {(values.get (i)
} else {. addFirst (i);
}
} else if (extr> values.get (i)) {. clear ();. add (i);
}
}
} = extrList;
}
LinkedList extremums; getExtremums () {extremums;
}
}
Висновок
Графічний метод заснований на геометричній інтерпретації задачі лінійного програмування і застосовується в основному при вирішенні завдань двовимірного простору і тільки деяких завдань тривимірного простору, так як досить важко побудувати багатогранник рішень, який утворюється в результаті перетину півпросторів. Задачу простору розмірності більше трьох зобразити графічно взага...