Ниже приведен следующий код из Mathematica, над которым я работал.
DynamicModule[{pts = {}, text = {}, triangle},
ClickPane[
Framed@Graphics[{White, EdgeForm[{Red}], Triangle[Dynamic[pts]],
Black, PointSize[0.02], Point[Dynamic[pts]], Black,
Dynamic[Text[Area[Triangle[pts]],
Dynamic[RegionCentroid[Triangle[pts]]]]]},
PlotRange -> 10, ImageSize -> 200],
(If[Length[pts] < 3, AppendTo[pts, #], pts = {}] &)]]
Я пытаюсь создать треугольник из трех точек, по которым пользователь нажимает в дополнение к отображению областитреугольник в его центроиде;однако всегда есть ошибка, пока я не нажму три раза.Mathematica отображает следующее:
Coordinate RegionCentroid[Triangle[{}]] should be a pair of numbers, or a Scaled or Offset form.
Что это значит и как я могу исправить ошибку?
(Кроме того, как я могу изменить код, чтобы мне не нужно было нажиматьдополнительное время, чтобы сбросить экран, чтобы начать новый треугольник? Я хочу только три раза щелкнуть мышью, чтобы получить мой треугольник, вместо четырех, которые требуются прямо сейчас.)