问题标签 [clipping]

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.

0 投票
3 回答
3950 浏览

math - 如何在平截头体上剪裁线段?

给定两个向量AB,它们形成线段L = AB。此外,给定一个由其左、右、下、上、近和远平面定义的视锥F。

我如何剪辑L反对F

也就是说,测试一个交叉点以及该交叉点在 L 上的哪个位置?(请记住,如果一条线段在拐角处与两侧相交,则它可以与平截头体有多个交点。)

如果可能,请提供代码示例(首选 C++ 或 Python)。

0 投票
2 回答
1486 浏览

wpf - WPF:WrapPanel 何时已满

我正在使用 WrapPanel 在列中显示可变高度项。包裹面板的大小受到限制。

有没有办法确定 WrapPanel 何时“满”?然后,我将使用动画分页到另一个面板。

我已经查看了作为子面板的项目的 ArrangeOverride,但它们似乎总是获得他们想要的所有空间。我需要一种方法来确定它们何时开始被剪裁。

0 投票
6 回答
5329 浏览

apache-flex - 如何使 Canvas 在 Flex 中剪辑其内容?

我使用 moveTo 和 lineTo 图形方法在 Canvas 对象上画了一条线。如果线条的一端位于 Canvas 之外,则线条会溢出并绘制在应用程序中的其他元素之上或之下。

如何使 Canvas 将线条包含在其内部?

谢谢!

0 投票
2 回答
641 浏览

.net - .NET:绘画(剪辑)只是控件的一部分?

我有一个 VB.NET 程序,我在其中使用 WebBrowser 控件来模拟时间表表单。对于数据输入,我使用了位于 WebBrowser 控件顶部的 DateTimePicker 控件,我已将其编程为在单击 WebBrowser 控件时移动到 WebBrowser 控件中表格单元格的顶部。(如果你想问我为什么不使用 DataGridView,那是为了格式化)

我的问题是,我想将 WebBrowser 的某些部分(标题、滚动条)视为位于 DateTimePicker 之上,尤其是在用户滚动 WebBrowser 时。我的想法是以某种方式为 DateTimePicker 提供一个矩形,使其仅绘制该区域内的控件部分。不幸的是,我对 .NET 几乎是全新的(但不是一般的编程),在谷歌搜索了半天之后,我仍然不知道该怎么做。

有谁知道如何做到这一点并且可以告诉我/指向我可以告诉我如何的地方?

0 投票
1 回答
694 浏览

iphone - 我在 iPHone 上的 Quartz 绘图在旋转后被剪掉了!

我正在绘制三个矩形,其中一个从视图的末端脱落(即绘图大于当前视图边界),因此您看不到右边缘。这很好,但是当视图旋转时,右边缘仍然被剪裁,即使有足够的空间来绘制它。如何让视图重绘整个矩形?

我尝试过:
1)将框架和边界矩形更改为更大
2)调用 setNeedsLayout
3)调用 setContentMode:UIViewContentModeRedraw;
4) 调用 [self.view setClipsToBounds:NO]

接下来是尝试 CGLayer,除非有人提出其他建议。

-欧文

0 投票
3 回答
1023 浏览

opengl - 多视图平截头体剪裁

函数 gluPerspective() 可用于设置近 Z 和远 Z 剪切平面。

我想画一个剪裁在某个远 Z 平面的场景,并在这个 Z 平面之外画另一个场景。是否可以每帧进行两次剪辑?

0 投票
4 回答
2569 浏览

java - 最优雅的剪线方式?

我有一个 Rectangle2D 和一个 Line2D。我想“剪裁”这条线,以便只保留矩形内的那部分线。如果没有一条线在矩形内,我希望将线设置为 (0,0,0,0)。基本上类似于

或类似的东西。

有没有办法用 java.awt.geom API 做到这一点?还是一种“手动”编码的优雅方式?

0 投票
3 回答
910 浏览

path - 在 Silverlight 2 中动态确定路径

我在画布内有一个带圆角的边框,并希望在画布上添加一个剪切区域,以便我添加的任何内容都被剪切到边框内的区域。我知道我可以设置画布的 Clip 属性,但是由于画布和对象的大小是动态的,而不是在 XAML 中分配大小,我不知道如何计算要使用的路径。有什么方法可以从 UIElement (在这种情况下为边框)派生 PathGeometry 吗?如果不是,解决此问题的最佳方法是什么?这是我正在使用的测试页面的 XAML。

0 投票
2 回答
478 浏览

c# - 在哪里可以找到当前的 Adob​​e 图像格式规范?“剪切路径”

这是关于 Adob​​e 的图像资源块 ( IRB ),它们以 TIFF、PSD、JPEG 格式存储。它也被称为“ 8BIM ”,这个标准是随 Adob​​e 的 Photoshop 3(1994 年 11 月)发布的。

IRB 包含有关颜色配置文件和剪切路径的信息(我感兴趣的内容)。

我可以在 Internet 上找到的唯一文档是 Adob​​e 在 1990 年提供的这份 4 页文档。

我一直在搜索imagemagick源代码,发现用于剪切路径的 IRB ID 是从 2000 到 2998,这是一个可用的 998 个剪切路径。

因此,我设法从 JPEG 和 TIFF 文件中获取每个资源块的 IRB 字节数组,在四页文档中指定。我推出了自己的产品并测试了Graphics Mill,看看是否设法获得了相同的信息。

我不确定如何将剪切路径字节数组转换为任何可用的东西,因为我什至不知道 adobe photoshop 使用的格式。想法是将剪切路径映射到 ac# GDI+ 图形路径。

我认为 adobe 多年来一直是图形设计的行业领导者,但他们甚至无法提供必要的文档,这有点可悲。

任何人都可以建议我可以使用的任何文档吗?

0 投票
2 回答
887 浏览

c# - 剪辑或遮罩 2D 纹理

嘿,我想知道是否有人知道为 gui 或类似系统的菜单使用 2D 纹理进行剪辑。

这是我想产生的示例输出

有一个大小为 500 x 500 的游戏屏幕。后面有一个大小为 1000 x 1000 的屏幕。

当我使用 500 x 500 的父屏幕在 0、0 处绘制纹理时,我希望不显示该组件

但如果我在 500、450 处绘制组件并且纹理宽度和高度为 100,我希望只能看到整个宽度,但只能看到组件高度的一半。

我想知道是否有一种简单的方法可以做到这一点?

编辑:

基本上我在想像Photoshop中的蒙版效果。

这是一张图片

黑色轮廓是绘制纹理的另一半的位置。