C# c语言中的斜面或凹陷效应算法#
我正在寻找为一组随机闭合贝兹形状生成斜面/浮雕效果的方法。我发现下面的帖子似乎符合我的要求 我怎么把这个移植到C#?有什么算法可以使用吗?或者,是否有任何.NET映像库可供使用,或者有一些代码片段可供我开始使用 我需要在服务器上运行此代码,以生成周围透明的动态形状C# c语言中的斜面或凹陷效应算法#,c#,algorithm,image-processing,graphics,gdi,C#,Algorithm,Image Processing,Graphics,Gdi,我正在寻找为一组随机闭合贝兹形状生成斜面/浮雕效果的方法。我发现下面的帖子似乎符合我的要求 我怎么把这个移植到C#?有什么算法可以使用吗?或者,是否有任何.NET映像库可供使用,或者有一些代码片段可供我开始使用 我需要在服务器上运行此代码,以生成周围透明的动态形状 从闭合多边形/多段线/路径创建“网格” 底座通过斜面/凹陷宽度扩大基本形状 上面或下面是你的形状 放大是通过围绕基本对称形状的中心进行缩放来完成的 或通过垂直移动+直线/曲线放大/相交切割进行连接 第二种选择对代码来说很复杂,但形
- 底座通过斜面/凹陷宽度扩大基本形状
- 上面或下面是你的形状
- 放大是通过围绕基本对称形状的中心进行缩放来完成的
- 或通过垂直移动+直线/曲线放大/相交切割进行连接
- 第二种选择对代码来说很复杂,但形状总是正确的
- 垂直于光源红色(通常灯位于左上角)
- 以及“网格”绿色上的曲面法线(对于每个边、区域或像素)
- 对于方向光的整个区域,光法线可以是恒定的(远光源,如 (阳光)
- 或为点光源的每个点计算(关闭光源)
- 所有法线必须是单位3D向量强>
- 点积是这样的标量向量乘法
(A.B) = dot_product(A(x1,y1,z1),B(x2,y2,z2)) = (x1*x2)+(y1*y2)+(z1*z2)
- 当A、B为单位向量时,结果为
- 0表示A、B垂直
- +/-1表示它们是平行的
- -1表示方向相反
PS.“网格”仍然可以是2D只有法线必须是3D您引用的文章中的示例是用openCV编写的,已经有一个名为Emgucv@elasticrash.. 非常感谢。我做了进一步的搜索,这个链接似乎很有用
(A.B)
= dot_product(A(x1,y1,z1),B(x2,y2,z2))
= (x1*x2)+(y1*y2)+(z1*z2)