in canvas, I have about 2000 elements based on the elements of the framework .. which include a total of 12000 drawings. This canvas is a 2-dimensional view of a complex machine. And this canvas has panning and zooming.The drawing comes in an instant .. but when the machine / drawing is fully loaded, then panning and zooming are very inconvenient.
I could apply the bitmapcache function in .net4 to make it fast. Then the problem is when the canvas is enlarged to see the details .. pixel blocks can be seen .. which is very ugly.
Is there any way to speed this up?
I do not find a reasonable answer for this.
I tried like this: at first I had 10,000 frame elements that represent simple shapes like rectangles and circles .. It was damn slow ..
Then I tried one element of the framework that contains 10,000 graphic drawings .. yet it was slow ..
Then I tried one element of the framework that contains one visual drawing that contains 10,000 drawings .. still slow ...
I will earn a bounty, I can’t set the bitmack all the time, because the graphic is awful.
, , , , , bitmapcache, , . , , , .
, bitmapcache ( ), 1 2, ... ...
, , .
EDIT:
: 3,6-, 6- , 16- , SSD, .... 1 -... -
? , Canvas, , Measure Arrange ( Arrange) , . Canvas RenderTransform, .
- FrameworkElements, , , Visual, . , , .
, , . , 3 ... , - . , 2048x2048.
- , ScrollViewer IScrollInfo RenderTargetBitmap ( / ), . (.. ) /, "" , , .
http://www.codeproject.com/Articles/97871/WPF-simple-zoom-and-drag-support-in-a-ScrollViewer
2d / , Deep Zoom. .dzi. .dzi -.
http://www.codeproject.com/Articles/128695/Deep-Zoom-for-WPF
, , .dzi.
http://jimlynn.wordpress.com/2008/11/28/programmatically-create-deep-zoom-collections/
.dzi.
http://www.deepzoompublisher.com/Viewer/
ZoomableApplication2, , ... , , ... , 1:1, http://blogs.msdn.com/b/kaelr/archive/2010/08/11/zoomableapplication2-a-million-items.aspx
Quadtree?
(2d) , , , , .
Quadtree , , , (Quadtree) , . .
, , , https://gamedev.stackexchange.com/questions/29121/organize-a-game-set
,
10K FrameworkElement, 12K DrawingVisual - , , . IMO, , .
( WPF): http://blogs.msdn.com/b/kaelr/archive/2009/05/21/priorityquadtree.aspx
OpenGL , , : -)))
. WPF VirtualCanvas , : ZoomableApplication2:
, , "Freeze" .
.NET 4.0 API- CacheMode,
Source: https://habr.com/ru/post/1754431/More articles:ruby rails, rake, crontab and coding - ruby | fooobar.comWhat is the standard way to write a program to create invoices? - javaPlanning a one-time event - c #Cannot Connect to Informix from ASP.NET Application - vb.netIs there something like "whereis" in MATLAB? - functionHow to extract rar file in c #? - c #Why SELECT 123456.123456789123456 FROM Dual; returns 123456.123457? - oracleКак вы можете "отпечатать" конкретный компьютер за брандмауэром, используя HttpContext? - asp.netHow to determine the time taken to complete a Rails request - ruby-on-railsWhat is the default GHCi implementation of MonadError? - haskellAll Articles