This document discusses supporting vector graphics in an embedded graphical environment. It begins with an introduction to the speaker and overview of the topic. The document then covers drawing basics like LCDs and fonts, as well as more advanced topics such as double buffering, vector graphics libraries, and spline curves. It also discusses challenges and trends in modern embedded UI design like transparency, animations, and single-page applications. Finally, it outlines areas for future work including domain-specific languages and optimization for low memory.
Однокомнатная квартира в Жилом Комплексе Наш дом на ул. Шевченко д.№82 г. РязаньRight Decision Real Estate
Продается однокомнатная квартира на 10-м этаже, нового дома в ЖК "Наш Дом" Свидетельство на руках. Высокий технический этаж. Лоджия с панорамным остеклением. Индивидуальное отопление, котёл BERETTA. В доме лифт бизнес-класса Wellmaks. Удобное месторасположение, в доме находятся супермаркет и хоз.магазин, аптека. Закрытый двор, детские и спортивные площадки.
Однокомнатная квартира в Жилом Комплексе Наш дом на ул. Шевченко д.№82 г. РязаньRight Decision Real Estate
Продается однокомнатная квартира на 10-м этаже, нового дома в ЖК "Наш Дом" Свидетельство на руках. Высокий технический этаж. Лоджия с панорамным остеклением. Индивидуальное отопление, котёл BERETTA. В доме лифт бизнес-класса Wellmaks. Удобное месторасположение, в доме находятся супермаркет и хоз.магазин, аптека. Закрытый двор, детские и спортивные площадки.
Computer graphics are pictures and films created using computers. Usually, the term refers to computer-generated image data created with help from specialized graphical hardware and software. It is a vast and recent area in computer science.
We are on the third turn of the 'terminal' interface in computers. This has implications in the design of future browsers and i/o libraries in languages. This concludes with a proposal for a C++ library, but more recently I've become interested in changing the way the browser presents itself to the user. I'll consider another presentation on that topic if a suitable party is interested.
OpenCL & the Future of Desktop High Performance Computing in CADDesign World
Modern desktop computers have more compute capabilities than ever before. Most of these systems include both a central processing unit (CPU) and a graphics processing unit (GPU), each consisting of multiple computing cores providing tremendous processing power. To date, harnessing the total processing power of a desktop workstation, fully utilizing both the CPU and GPU, has proven difficult for software developers. CPUs and GPUs have few similarities in both design and programming models. OpenCL is the tool that bridges the gap for software developers and enables them to fully tap into the power of both processors with a single software programming interface.
This presentation will examine the details of CPUs and GPUs, explore their differences and similarities, and highlight the computing power they can provide. We will also take a look OpenCL, what it is, what it does, and how this new computing interface will change the way software developers create software and help end users fully realize the compute power contained within today’s modern desktop computers.
La piattaforma Ruju per la ricostruzione 3D di scene e oggetti reali a partir...Sardegna Ricerche
L'intervento di Marco Di Benedetto in occasione del workshop "Ruju - Una piattaforma per la ricostruzione 3D", che si è svolto a Nuoro il 23 novembre 2015.
L'evento è stato organizzato dal Progetto Cluster Elettronica di Sardegna Ricerche.
- Vector- and Raster-based Graphics
-- Idea behind Vector- and Raster-based Graphics
-- Crispness
-- Overview of Raster-based Drawing APIs
- Platform independent Graphics and GUIs in the Web Browser
-- Bare HTML Pages
-- Plugins and Problems
-- From rich Content to HTML 5
- Drawing with HTML 5 Canvas
-- Continuous, Event driven and free Drawing
-- Basic Drawing "How does Drawing work with JavaScript?"
-- Interaction with Controls
Animation's Life Cycle And Its ApplicationShakaib Arif
This is my first presentation in the University in Computer Science Programme which went really well.So I thought to share it with someone out there, if it could be helpful to anyone.
A robot which could identify objects of different color and shapes. This is based on processing of images captured by a webcam and then using the data to drive the robot. Hardware used was Beagle Board for image processing and tool used was OpenCV to write the code.
Image generation on display, the technology used are discussed, Steps for displaying 2D and 3D models are: vectorize, clip, transform and draw. Windowing vs. viewing transformation. Low cost hardware for display of graphics images are available. Possible high degree of visual realism in the display of engineering model and dynamic manipulation of shaded images of engineering parts.
- Vector- and Raster-based Graphics
-- Idea behind Vector- and Raster-based Graphics
-- Crispness
-- Overview of Raster-based Drawing APIs
- Platform independent Graphics and GUIs in the Web Browser
-- Bare HTML Pages
-- Plugins and Problems
-- From rich Content to HTML 5
- Drawing with HTML 5 Canvas
-- Continuous, Event driven and free Drawing
-- Basic Drawing "How does Drawing work with JavaScript?"
-- Interaction with Controls
Courier management system project report.pdfKamal Acharya
It is now-a-days very important for the people to send or receive articles like imported furniture, electronic items, gifts, business goods and the like. People depend vastly on different transport systems which mostly use the manual way of receiving and delivering the articles. There is no way to track the articles till they are received and there is no way to let the customer know what happened in transit, once he booked some articles. In such a situation, we need a system which completely computerizes the cargo activities including time to time tracking of the articles sent. This need is fulfilled by Courier Management System software which is online software for the cargo management people that enables them to receive the goods from a source and send them to a required destination and track their status from time to time.
Student information management system project report ii.pdfKamal Acharya
Our project explains about the student management. This project mainly explains the various actions related to student details. This project shows some ease in adding, editing and deleting the student details. It also provides a less time consuming process for viewing, adding, editing and deleting the marks of the students.
Computer graphics are pictures and films created using computers. Usually, the term refers to computer-generated image data created with help from specialized graphical hardware and software. It is a vast and recent area in computer science.
We are on the third turn of the 'terminal' interface in computers. This has implications in the design of future browsers and i/o libraries in languages. This concludes with a proposal for a C++ library, but more recently I've become interested in changing the way the browser presents itself to the user. I'll consider another presentation on that topic if a suitable party is interested.
OpenCL & the Future of Desktop High Performance Computing in CADDesign World
Modern desktop computers have more compute capabilities than ever before. Most of these systems include both a central processing unit (CPU) and a graphics processing unit (GPU), each consisting of multiple computing cores providing tremendous processing power. To date, harnessing the total processing power of a desktop workstation, fully utilizing both the CPU and GPU, has proven difficult for software developers. CPUs and GPUs have few similarities in both design and programming models. OpenCL is the tool that bridges the gap for software developers and enables them to fully tap into the power of both processors with a single software programming interface.
This presentation will examine the details of CPUs and GPUs, explore their differences and similarities, and highlight the computing power they can provide. We will also take a look OpenCL, what it is, what it does, and how this new computing interface will change the way software developers create software and help end users fully realize the compute power contained within today’s modern desktop computers.
La piattaforma Ruju per la ricostruzione 3D di scene e oggetti reali a partir...Sardegna Ricerche
L'intervento di Marco Di Benedetto in occasione del workshop "Ruju - Una piattaforma per la ricostruzione 3D", che si è svolto a Nuoro il 23 novembre 2015.
L'evento è stato organizzato dal Progetto Cluster Elettronica di Sardegna Ricerche.
- Vector- and Raster-based Graphics
-- Idea behind Vector- and Raster-based Graphics
-- Crispness
-- Overview of Raster-based Drawing APIs
- Platform independent Graphics and GUIs in the Web Browser
-- Bare HTML Pages
-- Plugins and Problems
-- From rich Content to HTML 5
- Drawing with HTML 5 Canvas
-- Continuous, Event driven and free Drawing
-- Basic Drawing "How does Drawing work with JavaScript?"
-- Interaction with Controls
Animation's Life Cycle And Its ApplicationShakaib Arif
This is my first presentation in the University in Computer Science Programme which went really well.So I thought to share it with someone out there, if it could be helpful to anyone.
A robot which could identify objects of different color and shapes. This is based on processing of images captured by a webcam and then using the data to drive the robot. Hardware used was Beagle Board for image processing and tool used was OpenCV to write the code.
Image generation on display, the technology used are discussed, Steps for displaying 2D and 3D models are: vectorize, clip, transform and draw. Windowing vs. viewing transformation. Low cost hardware for display of graphics images are available. Possible high degree of visual realism in the display of engineering model and dynamic manipulation of shaded images of engineering parts.
- Vector- and Raster-based Graphics
-- Idea behind Vector- and Raster-based Graphics
-- Crispness
-- Overview of Raster-based Drawing APIs
- Platform independent Graphics and GUIs in the Web Browser
-- Bare HTML Pages
-- Plugins and Problems
-- From rich Content to HTML 5
- Drawing with HTML 5 Canvas
-- Continuous, Event driven and free Drawing
-- Basic Drawing "How does Drawing work with JavaScript?"
-- Interaction with Controls
Courier management system project report.pdfKamal Acharya
It is now-a-days very important for the people to send or receive articles like imported furniture, electronic items, gifts, business goods and the like. People depend vastly on different transport systems which mostly use the manual way of receiving and delivering the articles. There is no way to track the articles till they are received and there is no way to let the customer know what happened in transit, once he booked some articles. In such a situation, we need a system which completely computerizes the cargo activities including time to time tracking of the articles sent. This need is fulfilled by Courier Management System software which is online software for the cargo management people that enables them to receive the goods from a source and send them to a required destination and track their status from time to time.
Student information management system project report ii.pdfKamal Acharya
Our project explains about the student management. This project mainly explains the various actions related to student details. This project shows some ease in adding, editing and deleting the student details. It also provides a less time consuming process for viewing, adding, editing and deleting the marks of the students.
Vaccine management system project report documentation..pdfKamal Acharya
The Division of Vaccine and Immunization is facing increasing difficulty monitoring vaccines and other commodities distribution once they have been distributed from the national stores. With the introduction of new vaccines, more challenges have been anticipated with this additions posing serious threat to the already over strained vaccine supply chain system in Kenya.
Final project report on grocery store management system..pdfKamal Acharya
In today’s fast-changing business environment, it’s extremely important to be able to respond to client needs in the most effective and timely manner. If your customers wish to see your business online and have instant access to your products or services.
Online Grocery Store is an e-commerce website, which retails various grocery products. This project allows viewing various products available enables registered users to purchase desired products instantly using Paytm, UPI payment processor (Instant Pay) and also can place order by using Cash on Delivery (Pay Later) option. This project provides an easy access to Administrators and Managers to view orders placed using Pay Later and Instant Pay options.
In order to develop an e-commerce website, a number of Technologies must be studied and understood. These include multi-tiered architecture, server and client-side scripting techniques, implementation technologies, programming language (such as PHP, HTML, CSS, JavaScript) and MySQL relational databases. This is a project with the objective to develop a basic website where a consumer is provided with a shopping cart website and also to know about the technologies used to develop such a website.
This document will discuss each of the underlying technologies to create and implement an e- commerce website.
Event Management System Vb Net Project Report.pdfKamal Acharya
In present era, the scopes of information technology growing with a very fast .We do not see any are untouched from this industry. The scope of information technology has become wider includes: Business and industry. Household Business, Communication, Education, Entertainment, Science, Medicine, Engineering, Distance Learning, Weather Forecasting. Carrier Searching and so on.
My project named “Event Management System” is software that store and maintained all events coordinated in college. It also helpful to print related reports. My project will help to record the events coordinated by faculties with their Name, Event subject, date & details in an efficient & effective ways.
In my system we have to make a system by which a user can record all events coordinated by a particular faculty. In our proposed system some more featured are added which differs it from the existing system such as security.
Explore the innovative world of trenchless pipe repair with our comprehensive guide, "The Benefits and Techniques of Trenchless Pipe Repair." This document delves into the modern methods of repairing underground pipes without the need for extensive excavation, highlighting the numerous advantages and the latest techniques used in the industry.
Learn about the cost savings, reduced environmental impact, and minimal disruption associated with trenchless technology. Discover detailed explanations of popular techniques such as pipe bursting, cured-in-place pipe (CIPP) lining, and directional drilling. Understand how these methods can be applied to various types of infrastructure, from residential plumbing to large-scale municipal systems.
Ideal for homeowners, contractors, engineers, and anyone interested in modern plumbing solutions, this guide provides valuable insights into why trenchless pipe repair is becoming the preferred choice for pipe rehabilitation. Stay informed about the latest advancements and best practices in the field.
Water scarcity is the lack of fresh water resources to meet the standard water demand. There are two type of water scarcity. One is physical. The other is economic water scarcity.
Democratizing Fuzzing at Scale by Abhishek Aryaabh.arya
Presented at NUS: Fuzzing and Software Security Summer School 2024
This keynote talks about the democratization of fuzzing at scale, highlighting the collaboration between open source communities, academia, and industry to advance the field of fuzzing. It delves into the history of fuzzing, the development of scalable fuzzing platforms, and the empowerment of community-driven research. The talk will further discuss recent advancements leveraging AI/ML and offer insights into the future evolution of the fuzzing landscape.
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)MdTanvirMahtab2
This presentation is about the working procedure of Shahjalal Fertilizer Company Limited (SFCL). A Govt. owned Company of Bangladesh Chemical Industries Corporation under Ministry of Industries.
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Dr.Costas Sachpazis
Terzaghi's soil bearing capacity theory, developed by Karl Terzaghi, is a fundamental principle in geotechnical engineering used to determine the bearing capacity of shallow foundations. This theory provides a method to calculate the ultimate bearing capacity of soil, which is the maximum load per unit area that the soil can support without undergoing shear failure. The Calculation HTML Code included.
2. About me
1
• From the opposite bank…Neihu(?
• Bachelor degree in Optoelectronics
• Now obtaining master degree in EE at NCKU
• Love music, soccer, photography,…
• Personal website: joouis.com
3. Intro
2
• Why do this work?
• Good one is not free.
• Free one is not good enough.
• Using HTML&CSS is better!
7. Draw: Liquid-crystal display
6
• Liquid-crystal display(LCD)
• From opaque to transparent when applying an electric field.
• Requiring external light to produce a visible image.
• Types:
• Passive-matrix: TN, STN, …
• Active-matrix: TFT(IPS, VA, …)
Picture source
10. Draw: MCU
9
• STM32F429ZI key features:
• Core: ARM® 32-bit Cortex®-M4 CPU with FPU, frequency up to 180 MHz
• Memories: Up to 2 MB of Flash memory
• LCD-TFT controller up to XGA resolution with dedicated Chrom-ART
Accelerator™ for enhanced graphic content creation (DMA2D)
• Up to 168 I/O ports with interrupt capability
• Up to 21 communication interfaces
11. Draw: VRAM
10
• It seems that we can draw pics after we initialize the
peripherals..
• But do this math work first:
Suppose we want to control a 2.4" QVGA(240*320) TFT
LCD, RGB565(2 btyes per pixel), how much bytes will be
needed per frame?
12. Draw: VRAM
11
• 240*320*2 = 153,600 btyes
• STM32F429ZI only have 192KB ram to use!!!
• So we need external ram, often call it Video Ram, which
was once commonly used to storage the framebuffer in
some graphics adapters.
• Then based on above, if TFT controller updates 240*320
pixels @60Hz?
• 153,600*60 = 9 MB/s (around 10-50% load on SDRAM)
17. Draw: Raster and Vector Graphics
16
• In computer graphics, a raster graphics image is a dot matrix
data structure representing a generally rectangular grid of
pixels
• Color mode: RGB565, RGB888, ARGB32
18. Draw: Vector Graphics
17
• If you open an svg file you will see that path elements are
specified using a graphical operation format that looks
something like this
19. Draw: TWIN
18
• A vector graphics framework for embedded system
• Its author is Keith Packard, who was named as “the person
behind most of the improvements made on the open source desktop
in the last ten years at least” in 2011.
20. Draw: Spline in TWIN
19
• Bézier curve is a kind of spline.
• And can be defined as:
21. Draw: Spline in TWIN
20
• Alogrithm in TWIN: De Casteljau's algorithm
23. Draw: Comparison between Bitmap & Vector
22
• Bitmap/raster graphics
• Pre-rendered. At run time,
basically just a data copy.
• Hard to do
• Zoom
• Rotate
• Color change
• Dynamic backgrounds
• But much faster and can make
heavy use of DMA transfers.
• Arithmetic/vector graphics
• Run-time calculations and pixel
plotting by MCU.
EASY
• Not really an option in this
context.
29. GUI: SPA Style
28
• Single-page application
• A web application or website that fits on a single web page
with the goal of providing a more fluent UX similar to a
desktop application.
30. GUI: Challenges
29
• MCU Load:
• Large amount of data
• UI is just a (small) part of the system
• Limit Pixel Redraws:
• Only draw the areas that actually change
• Only draw pixels that are actually visible
• Memory Usage: Internal and external RAM usage
• High-end Look & Feel