Tag: C#的

OpenGL – 具有多个纹理的遮罩

我已经根据以下概念在OpenGL中实现了遮罩: 面具由黑色和白色组成。 前景纹理只能在蒙版的白色部分可见。 背景纹理应该只在遮罩的黑色部分可见。 我可以使用glBlendFunc()来设置白色部分或黑色部分,但不是同时使用这两个部分,因为前景层不仅可以混合到蒙版上,还可以混合到背景层上。 有没有人知道如何以最好的方式完成这个任务? 我一直在寻找networking并阅读有关片段着色器的内容。 这是要走的路吗?

旋转图像,而不用在C ++中的OpenCV中裁剪

我想旋转一个图像,但我无法获得旋转的图像没有裁剪 我的原始图像: 现在我使用这个代码: #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <opencv2/imgproc/imgproc.hpp> // Compile with g++ code.cpp -lopencv_core -lopencv_highgui -lopencv_imgproc int main() { cv::Mat src = cv::imread("im.png", CV_LOAD_IMAGE_UNCHANGED); cv::Mat dst; cv::Point2f pc(src.cols/2., src.rows/2.); cv::Mat r = cv::getRotationMatrix2D(pc, -45, 1.0); cv::warpAffine(src, dst, r, src.size()); // what size I should use? cv::imwrite("rotated_im.png", dst); return 0; } 并获得以下图像: 但我想获得这个: 非常感谢您的帮助!

是sizeof(枚举)== sizeof(int),总是?

是sizeof(枚举)== sizeof(int),总是? 还是编译器依赖? 是不是说错了,因为编译器是针对字长(内存alignment)进行优化的,即y int是特定编译器的字大小? 这是否意味着如果我使用枚举就没有处理惩罚,因为它们是字alignment的? 如果我把所有的返回代码放在一个枚举中,不是更好,因为我显然不担心它的值,只检查返回types的名字。 如果是这种情况,#DEFINE会更好,因为它可以节省内存。 通常的做法是什么? 如果我必须通过networking传输这些返回types,并且必须在另一端执行一些处理,那么您希望枚举/#define / const ints是什么。 编辑 – 只要在网上检查,作为编译器不象征性地链接macros,那么人们如何debugging,比较整数值与头文件? 从答案 – 我在下面添加这一行,因为我需要澄清 – “所以它是实现定义的,sizeof(枚举) 可能等于sizeof(char),即1。 这不是说编译器检查枚举值的范围,然后分配内存。 我不这么认为,当然我不知道。 有人可以解释我什么是“可能”。

一对一使用entity framework代码的可选关系

我们希望使用entity framework代码优先使用一对一的可选关系。 我们有两个实体。 public class PIIUser { public int Id { get; set; } public int? LoyaltyUserDetailId { get; set; } public LoyaltyUserDetail LoyaltyUserDetail { get; set; } } public class LoyaltyUserDetail { public int Id { get; set; } public double? AvailablePoints { get; set; } public int PIIUserId { get; set; } public […]

如何计算其已知字体大小和字符的WPF TextBlock宽度?

比方说,我有TextBlock与文本“一些文本”和字体大小10.0 。 我如何计算适当的TextBlock 宽度 ?

在构造函数中调用asynchronous方法?

简介 :我想在构造函数中调用asynchronous方法。 这可能吗? 详细信息 :我有一个名为getwritings()分析JSON数据的方法。 一切正常,如果我只是在async方法中调用getwritings() ,并await它的左侧。 然而,当我在我的页面中创build一个LongListView并尝试填充它时,我发现getWritings()出人意料地返回null ,而LongListView是空的。 为了解决这个问题,我试着将getWritings()的返回types改为Task<List<Writing>> ,然后通过getWritings().Result在构造函数中检索getWritings().Result 。 但是,这样做最终会阻塞UI线程。 public partial class Page2 : PhoneApplicationPage { List<Writing> writings; public Page2() { InitializeComponent(); getWritings(); } private async void getWritings() { string jsonData = await JsonDataManager.GetJsonAsync("1"); JObject obj = JObject.Parse(jsonData); JArray array = (JArray)obj["posts"]; for (int i = 0; i < array.Count; i++) […]

如何获得用户typesC#语法突出显示在VS 2012 RC中再次工作?

不知何故,我的语法突出显示C#代码的一部分已经消失在VS 2012 IDE中。 卸载,重新引导和重新安装不会执行任何操作,也不会重置选项对话框中的颜色。 下面是一些项目的例子,这些项目都是默认的(黑色),通常颜色不是: 属性 系统类 我自己的class级 以下是一些仍然有颜色的关键字: 运用 上市 空虚 VAR 对于 有没有其他人经历这个,并设法解决它?

如何使用C#将整个文件读取到string?

将文本文件读入stringvariables的最快方法是什么? 我知道这可以通过几种方式完成,比如读取单个字节,然后将其转换为string。 我正在寻找一种最小编码的方法。

比较两个string,在C#中忽略大小写

可能重复: 不同的string比较方法有什么区别 以下哪两项更有效率? (或者也许还有第三个select,更好呢?) string val = "AStringValue"; if (val.Equals("astringvalue", StringComparison.InvariantCultureIgnoreCase)) 要么 if (val.ToLowerCase() == "astringvalue") ?

使用指针从单链表中删除项目

在最近的Slashdot访谈中, Linus Torvalds给出了一个例子,说明一些人如何以某种方式使用指针,表明他们不知道如何正确使用它们。 不幸的是,由于我是他所谈论的人之一,我也不了解他的例子: 我见过很多人通过跟踪“prev”条目来删除单链表条目,然后删除条目,做类似 if (prev) prev->next = entry->next; else list_head = entry->next; 每当我看到这样的代码,我只是去“这个人不明白指针”。 可悲的是,这很常见。 理解指针的人只是使用“指向入口指针的指针”,并用list_head的地址初始化它。 然后当他们遍历列表,他们可以删除条目,而不使用任何条件,只是做 *pp = entry->next 有人可以提供更多的解释,说明为什么这种方法更好,以及如何在没有条件陈述的情况下工作?