Q: Does touchvg optimize the rendering efficiency?
A: touchvg optimizes the rendering efficiency:
A. Check the envelope box: the image outside the view is not displayed.
B. jiugongge tailoring: display the straight line segment, line, and polygon.
C. asynchronous display in the background: When regenall is re-generated, it is drawn in a separate calayer and GCD thread, and then displayed in the view after the painting, without blocking the interaction and display of the main thread. For example, if you redraw 10000 curves in the background for 1 second, the view will not be displayed in white or black.
D. The dynamic drag display is in a separate view. You can drag or highlight a chart quickly without affecting the static display content of the main view. (If you move 10000 curve images continuously in the same view, it will be very difficult to re-paint. If you place these images in the main view, the drag 100 images are displayed smoothly in another view)
Q: Is touchvg applicable to Big Data Volume Rendering on mobile platforms?
A: On ipad3, 10000 curves are drawn for less than 3 seconds. This is a random graph added using the addshapesfortest function, which is faster on iPhone 5. If it is a line chart, it is faster. It shows 20-50 thousand random line segments for about 1 second. I have performed a performance analysis experiment on pages 3-37 of my graduation thesis. It is shown that improper parameter settings will cause a significant reduction in performance.
If you want to display more than 0.1 million Complex Images with more than 0.5 million vertices, do not redraw them all. We recommend that you:
A. Multi-thread rendering of partition blocks;
B. Different details can be displayed for different scale-down levels;
C. You can perform step-by-step rendering, for example, using fill as the last rendering step.
D. For dynamic translation and contraction, use the zoom-in or outer box display.
For more professional display, OpenGL ES can be used. corresponding reference open-source projects include monkvg and inkpad. However, it is difficult to develop and has high technical requirements for developers and is not suitable for short-term implementation.
Q: How is touchvg compatible? Have you performed compatibility tests for ios6, ios7, and many Android versions? Is it compatible with subsequent systems?
Touchvg is compatible with IOS 4.3-7.0 and has tested compatibility with multiple versions, including compilation settings, code format, gcd, and memory technology compatibility tests. Because no special API is used, it has forward compatibility and should be suitable for new versions such as iOS 8.
Q: How is touchvg compatible with system controls? Can it be simply Integrated? Can it be displayed? (For example, cover and offset)
A: touchvg uses uikit and CoreGraphics to render the image. It displays the image in a general uiview, which is consistent with the display rules of IOS itself and can be closely integrated with system controls. You can display images in a custom control, or display buttons on the graphic view for any interface layout. The touchvg-based module also supports coreanimation animation effects.
Q: How can I obtain documents? If this document is not available yet and touchvg is used later, is there enough energy to provide technical support?
A: There are many examples in vgios-demo, ioscolorpad, and other projects. There are also many annotations in vgios. You can read the implementation and examples and try to get more content. There are also some experts in the QQ group who can discuss and learn from each other. If you can actively share your knowledge, experience, and participate in open-source projects (Report Bugs, suggestions, and submit PR), you will be invited to more drawing projects. When touchvg is used, it is usually able to receive free response support within one week, but it is not responsible for guarantee.
Touchvg Q &