喷嘴几何形状 WPF
Nozzle geometry WPF
我目前正在 WPF 中用 C# 做一个 CFD 简单问题,分析准一维流(仅随 x 变化),我想以 "decent" 方式表示结果。因此,将其想象成具有给定数量的垂直截面的矩形。形式不是矩形,而是喷嘴。我想知道是否有一种方法可以用 Stackpanels 或类似某种形式的东西来表示。
在所附的图片中可以看到形状,以帮助理解问题。
每个部分(喷嘴边缘的矩形 "cut")都有一个相关的温度,并且已经 computed.Just 举个例子,绘制的部分的温度值为 250,对于例如我想用红色来画它。[=14=]
我的问题是:是否有任何方式 "shaping" 堆叠面板或类似的东西来显示如图所示的形状?
我搜索过信息,这是找到的最相似的选项:
<Path Stroke="Black" StrokeThickness="1">
<Path.Data>
<PathGeometry>
<PathGeometry.Figures>
<PathFigureCollection>
<PathFigure StartPoint="10,100">
<PathFigure.Segments>
<PathSegmentCollection>
<QuadraticBezierSegment Point1="200,200" Point2="300,100" />
</PathSegmentCollection>
</PathFigure.Segments>
</PathFigure>
</PathFigureCollection>
</PathGeometry.Figures>
</PathGeometry>
</Path.Data>
</Path>
绘制此图像的。我想要构建的是使用这种方法的喷嘴,并且能够按照第一张图片中的建议将其分开或在其中放置垂直段,根据它们的值绘制它们。
您定义了一个非常复杂的问题,对于单个 SO 问题来说可能太多了。我绝不是为您的问题提供完整的解决方案。但也许这足以为您指明正确的方向。从那里,您可以开始自己的解决方案,如果遇到困难,可以提出更多问题。
您最好的解决方案可能是使用 c#(或可能 XAML)在 canvas 上手动绘制形状。
这是我快速搜索后能找到的最好的 link。
https://msdn.microsoft.com/en-us/library/ms751808(v=vs.100).aspx
这是微软在XAML和代码中绘制几何和几何形状的教程。
请参阅有关路径几何的部分。
我认为通过将两个 ArcSegments 用于弯曲的侧面和 LineSegments 连接两侧,您可以获得您正在寻找的基本形状。
我认为对于您的矩形 "cuts",您还必须在代码中显式构建它们。将它们覆盖在喷嘴上时,很难准确匹配它们的形状。一种简单的解决方法是创建所有水平条并对其进行绘制。然后创建覆盖矩形的顶部和底部白色覆盖层。一个覆盖层将具有顶部喷嘴的形状,并覆盖您不想显示的矩形部分。对于构成喷嘴底部的另一种形状也类似。
我目前正在 WPF 中用 C# 做一个 CFD 简单问题,分析准一维流(仅随 x 变化),我想以 "decent" 方式表示结果。因此,将其想象成具有给定数量的垂直截面的矩形。形式不是矩形,而是喷嘴。我想知道是否有一种方法可以用 Stackpanels 或类似某种形式的东西来表示。
在所附的图片中可以看到形状,以帮助理解问题。
每个部分(喷嘴边缘的矩形 "cut")都有一个相关的温度,并且已经 computed.Just 举个例子,绘制的部分的温度值为 250,对于例如我想用红色来画它。[=14=]
我的问题是:是否有任何方式 "shaping" 堆叠面板或类似的东西来显示如图所示的形状?
我搜索过信息,这是找到的最相似的选项:
<Path Stroke="Black" StrokeThickness="1">
<Path.Data>
<PathGeometry>
<PathGeometry.Figures>
<PathFigureCollection>
<PathFigure StartPoint="10,100">
<PathFigure.Segments>
<PathSegmentCollection>
<QuadraticBezierSegment Point1="200,200" Point2="300,100" />
</PathSegmentCollection>
</PathFigure.Segments>
</PathFigure>
</PathFigureCollection>
</PathGeometry.Figures>
</PathGeometry>
</Path.Data>
</Path>
绘制此图像的。我想要构建的是使用这种方法的喷嘴,并且能够按照第一张图片中的建议将其分开或在其中放置垂直段,根据它们的值绘制它们。
您定义了一个非常复杂的问题,对于单个 SO 问题来说可能太多了。我绝不是为您的问题提供完整的解决方案。但也许这足以为您指明正确的方向。从那里,您可以开始自己的解决方案,如果遇到困难,可以提出更多问题。
您最好的解决方案可能是使用 c#(或可能 XAML)在 canvas 上手动绘制形状。
这是我快速搜索后能找到的最好的 link。
https://msdn.microsoft.com/en-us/library/ms751808(v=vs.100).aspx
这是微软在XAML和代码中绘制几何和几何形状的教程。 请参阅有关路径几何的部分。 我认为通过将两个 ArcSegments 用于弯曲的侧面和 LineSegments 连接两侧,您可以获得您正在寻找的基本形状。
我认为对于您的矩形 "cuts",您还必须在代码中显式构建它们。将它们覆盖在喷嘴上时,很难准确匹配它们的形状。一种简单的解决方法是创建所有水平条并对其进行绘制。然后创建覆盖矩形的顶部和底部白色覆盖层。一个覆盖层将具有顶部喷嘴的形状,并覆盖您不想显示的矩形部分。对于构成喷嘴底部的另一种形状也类似。