当前位置:网站首页>WPF personal summary on drawing
WPF personal summary on drawing
2020-11-07 20:58:00 【Irving the procedural ape】
The contents are all personal summaries .
If there is a mistake, please let me know , And forgive me a lot .
In general, the drawing is divided into two areas , One is shape , Second, pixel filling .
Shape is drawing rectangles , circular , Complex combination shapes .
Pixel filling, such as image filling , But more bitmap operations , It's also possible to draw shapes , However, the filling algorithm for the shape is relatively difficult , It needs to be calculated independently .
stay WPF in , Corresponding to divided into control drawing , Bitmap operation .
I don't repeat the simple drawing too much , Usually the general difficulty , It's complexity mapping , Large scale drawing, etc .
In general? , There is a plan for drawing with shapes
1 Direct overloading OnRender Method and use it inside DrawingContext Draw
2 Hijack host control , And create inheritance DrawingVisual Control , And use RenderOpen Method to draw
3 Use GDI+ Draw and match Bitmap After use DrawingContext After line drawing
Usually , Method 1, Maybe the range of use is too small , Method 3 The effect is good , But it doesn't work well when you zoom in .
So let's focus on the method 2
The method is simple to use , Mainly the method of drawing inside .
The best way is to use DrawGeometry.
But the problem is to submit the corresponding contents of multiple control drawings ? Or the interior is drawn multiple times after one submission ?
for instance , The rectangle I sent before , Using multiple submissions , Submit a small amount of drawing at a time , When a lot of content is drawn, it means a lot of submission , A lot of drawing , Although a single drawing is fast and basic 0.2 millisecond , But it doesn't hold up , That's what makes it stuck .
So the right way to do this is to have a small amount of .........
版权声明
本文为[Irving the procedural ape]所创,转载请带上原文链接,感谢
边栏推荐
猜你喜欢
你可能不知道的Animation动画技巧与细节
Data transmission of asynchronous serial communication controlled by group bus communication
关于晋升全栈工程师,从入门到放弃的神功秘籍,不点进来看一看?
计组-总线通信控制之异步串行通信的数据传输
Design pattern of facade and mediator
30岁后,你还剩下什么?
C language I blog assignment 03
微服务的出现和意义的探索
android基础-RadioButton(单选按钮)
What kind of technical ability should a programmer who has worked for 1-3 years? How to improve?
随机推荐
The most hard core of the whole network explains the computer startup process
洞察——风格注意力网络(SANet)在任意风格迁移中的应用
awk实现类sql的join操作
IDEA-项目未自动生成 .iml 文件
年薪90万程序员不如月入3800公务员?安稳与高收入,到底如何选择?
[original] the influence of arm platform memory and cache on the real-time performance of xenomai
【C++学习笔记】C++ 标准库 std::thread 的简单使用,一文搞定还不简单?
如何以计算机的方式去思考
It's time to end bertology
Thinkphp6中where条件中字段与字段比较条件的写法
Big data algorithm - bloon filter
建议患者自杀,OpenAI警告:GPT-3用于医疗目的风险太高
C language I blog assignment 03
Insight -- the application of sanet in arbitrary style transfer
websocket+probuf.原理篇
Let's talk about the locks in the database
Kylin on Kubernetes 在 eBay 的实践
计组-总线通信控制之异步串行通信的数据传输
easyui dialog“缓存问题”
编程界大佬教你:一行Python代码能做出哪些神奇的事情?