问题标签 [pathgeometry]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wpf - 如何使用 PathGeometry 中资源中的 PathFigure?
我想知道是否有任何方法可以在 xamlPathFigure
的元素中使用 from 资源。PathGeometry
假设我有一个 ResourceDictionary 和两个PathFigure
对象,其中的“x:Key”属性分别等于“Figure1”和“Figure2”。我的目标是创建一个PathGeometry
withFigures
属性,其中填充了一个包含 Figure1 和 Figure2 的集合。我可以使用隐藏文件的代码轻松地做到这一点,但是我想知道是否有任何方法可以仅使用 xaml 来做到这一点。
我现在可以创建一个PathGeometry
:
我想我可以写一些MarkupExtension
来做以下事情,但我正在寻找最好的方法。感谢您的建议。
c# - Wpf 自定义几何缩放
我正在用 WPF 开发一个非常简单的游戏(我知道 wpf 不是为游戏设计的,但我这样做是为了好玩)。我有一个Enemy
派生自CustomControl
. 我用这个控件的模板写了一段代码。这是代码:
现在我遇到了一个问题,因为如果我将控件放在面板上,它的宽度和高度将固定为 20 个单位(如上面几何坐标中所定义)。但是,我希望将我的形状延伸到它在布局过程中收到的位置。所以我试着把我的Path
元素放进去Viewbox
,但它仍然有 20 的宽度和高度。
有什么简单的方法可以解决这个问题吗?
c# - 在 wpf 中绘制来回路径时出现奇怪的问题
我在 c# 代码中使用 Path 绘制了一系列点。我只是在 xaml 中给出一个例子。
所以折线是从 (20,37) 到 (20,36) 并返回到 (20,37)。应该很短吧?但它变成了大约 9dp 长的片段。
如果我只是从 (20,37) 到 (20,36) 绘制,它表现正常。因为这些点是实时绘制的,所以我无法进行预处理。
为什么会这样以及如何解决?
c# - 正确拆分 System.Windows.Media.PathGeometry
我有一个这样的 System.Windows.Media.PathGeometry:
而且我想分割几何,以便每个灰色形状都在一个新的 Geometry 对象中。我试图遍历 PathGeometry 的 FigureColletion 并将每个图形放入一个新的 Geometry 中,但结果并不像我预期的那样,因为一个图形只描述了形状的一个边缘而不是形状本身。这意味着,有些图形是加法的,有些是减法的:
为了正确分割几何图形,我必须弄清楚哪些 PathFigure 应用了加法,哪些是减法。PathFigure 类型上没有属性,它可以为我提供有关其应用方式的信息。有人知道如何解决这个问题吗?
提前致谢。
c# - 自定义形状设置不同颜色以包含几何图形wpf
我在其中创建了一个由 a和 aShape
构造的自定义。这是代码:Rectangle
Text
这combinedGeometry
是我最近添加的,在此之前我使用PathGeometry
. 在这两种情况下, theRectangle
和 theText
都以相同的颜色着色,并且“遭受”相同的形状效果。
我有办法将两者分开吗?通过分离我的意思是它们都是内部的单个元素Shape
,我可以自由地修改它们中的任何一个或一起修改它们?
wpf - 除了 Button 之外,哪些控件可以在不定义 Stroke 或 Fill 的情况下显示 WPF Geometry 图标?
我需要显示这样的图标:
如果我把它们放在按钮中,它们就可以了。但是我需要在许多其他地方展示它们,但它们没有展示。有时它有助于定义描边/填充,但这是错误的。我不想编造一些硬编码的颜色,并且在主题/样式更改时看起来很愚蠢。
这有效:
这不会:
那么这里的逻辑是什么,我怎么能把它们展示在一些文本框旁边呢?
wpf - ItemPresenter 与带有 Canvas ItemPanel 的 ItemTemplate 内的 PathGeometry 绝对位置混淆
我有一个ItemsControl
with a Canvas
as itsItemsPanel
和Path
as the ItemTemplate
。目标是绘制图形,因此Path.Data
应该包含要在画布中绘制的具有绝对坐标的几何图形。
如果我实例化一个 Canvas 并将路径直接放在其中,它工作正常。
但是如果我使用 ItemsControl,每个 Path 最终都会包裹在 ContentPresenter 中,然后坐标就会丢失,因为 ContentPresenter 与 Canvas 原点对齐。
这是我的代码:
wpf - 为 PathFigure C# WPF 动态添加事件处理程序(MouseDown)
我使用此代码从点动态创建了一个对象:
现在我想为这个对象添加事件处理程序。如果对象是路径或折线类型,则不会有问题。我会像这样添加事件处理程序:
问题是我必须使用不接受 MouseDown 事件处理程序的 Figures 和 PathGeometry。因为它们来自 System.Windows。媒体类和路径/多段线来自 System.Windows。形状我找不到将正确的事件处理程序 (MouseDown) 分配给我的 Figure 对象的解决方案。
解决方案是什么,或者这个问题有什么好的解决方法吗?也许以某种方式投射或转换它?
c# - How can I get paths in a WPF GeometryGroup correctly aligned?
I am using a GeometryGroup
to draw a symbol in the center of a circle.
The example below shows one of my attempts while experimenting with this. It features three straight lines that depart from the same point of origin (32,32):
When this is rendered however the three lines do not have the same endpoint, although they do seem to cross each other at this center point of 32,32.
If I combine these same three lines into one figure:
the rendered result looks different, but also odd: the third (diagonal) line is crossing the origin, the other two are ending in the origin and the x and y-coordinates of 19 do not match.
Why is this happening and how can I fix this?