我使用 .Net 的 ILNumerics 数学库创建了一个简单的线图。我想与绘制的数据进行交互。应该可以选择绘制数据的子集并对其执行不同的数学运算。我想使用标记进行选择,但我无法检索到正确的位置值。我想我必须以某种方式改变点......也许有人可以帮助我?
这是代码的简化版本:
private void ilPanel1_Load(object sender, EventArgs e)
{
var scene = new ILScene();
//create 2D data
ILArray<float> line1 = new float[,] {
{0.0f, 1.0f, 2.0f },
{0.0f, 2.0f , 3.0f} };
var linePlot1 = new ILLinePlot(line1.T,
lineColor: Color.Blue,
lineWidth: 3,
markerStyle: MarkerStyle.Dot);
var plot = scene.Add(new ILPlotCube());
plot.Add(linePlot1);
linePlot1.Marker.MouseClick += Marker_MouseClick;
ilPanel1.Scene = scene;
}
一旦我单击其中一个标记,就会调用 Marker_MouseClick 事件。
void Marker_MouseClick(object sender, ILMouseEventArgs e)
{
ILGroup group = e.Target.Parent;
ILMarker marker = group.First<ILMarker>();
var posx = e.LocationF.X;
var posY = e.LocationF.Y;
}
但这些位置并不是指我的轴的缩放。有没有一种简单的方法可以将 LocationF 值转换为我的轴的缩放比例?或者是否有另一种方法可以在触发事件后获取标记的 x 和 y 值?
蒂姆