background preloader

Canvas - SVG

Facebook Twitter

Rain & Water Effect Experiments. Some experimental rain and water drop effects made with WebGL and shown in different demo scenarios.

Rain & Water Effect Experiments

View demo Download source Today we’d like to share some WebGL experiments with you. The idea is to create a very realistic looking rain effect and put it in different scenarios. In this article, we’ll give an overview of the general tricks and techniques used to make this effect. Please note that the effect is highly experimental and might not work as expected in all browsers. Getting Started. An Overview of SVG Patterns : Adobe Dreamweaver Team Blog. In this post, we are going to take a look at SVG patterns and what we can make with them.

An Overview of SVG Patterns : Adobe Dreamweaver Team Blog

SVG patterns are analogous to CSS backgrounds, and are scarcely more than repeating images. However, combined with everything else SVG has to offer, SVG patterns can be a great tool for making nice effects. In this article, we’ll see some typographic effects that can be done with them. The basics. SVG FILTERS + DRAG AND DROP. Textures.js. Textures are useful for theselective perception of different categories View on Github Getting started -- from the top of d3.js --

Textures.js

CIRCULUS.SVG: The SVG Circular Menu Generator. So you've picked your menu style and downloaded an all-new SVG menu.

CIRCULUS.SVG: The SVG Circular Menu Generator

What then? Here is everything you need to know to customize your menu and embed it in your page. Dissecting The Code. SVG-edit. Fitter Happier Text. Using SVG to shrink your PNGs. September 7, 2014 Wouldn’t it be great if you could get the compression of a JPEG and keep the transparency of a PNG?

Using SVG to shrink your PNGs

Well, you can, sort of. Here’s a little trick that I discovered while working on the new Sapporo Beer website. Notice how the beer can on the Sapporo website has a transparent area (it’s hard to notice but there’s a video playing behind it). As a PNG, the beer can graphic would have been over 1.2 MB! Animating SVG text On A Path. Understanding SVG Coordinate Systems & Transformations (Part 2) – The <code>transform</code> Attribute. SVG elements can be transformed by scaling, translating, skewing, and rotating—much like HTML elements can be transformed using CSS Transforms.

Understanding SVG Coordinate Systems & Transformations (Part 2) – The <code>transform</code> Attribute

However, there are certain inevitable differences when it comes to the coordinate systems used and affected by these transformations. In this article we'll go over the SVG transform attribute and CSS property, covering how to use it, and things you should know about SVG coordinate system transformations. This is the second article in a series I'm writing about SVG coordinate systems and transformations. In the first article, I covered everything you need to know to understand the basics of SVG coordinate systems; more specifically, the SVG viewport, and the viewBox and preserveAspectRatio attributes. In this part I'm going to assume you read the first one, so, if you haven't, make sure you do before you continue reading this article. The transform Attribute Values. Responsive News — Building a responsive SVG map. Visualising data is fun.

Responsive News — Building a responsive SVG map

Visualising election results in real time - especially so. For the 2014 local and european elections, we wanted to build rich visual components that tell the election results in an easy to understand way. One of those visual components is a fully responsive map, built with SVG. We learned a lot building it so wanted to share with you some information about how we did it.

At the BBC plenty of online election maps have previously been built in Flash, but that format no longer meets our needs for serving our content to multiple platforms. Pro tip: Make it light, lighter, and lighter… One of the advantages of using SVG as a map is that it’s vector based, so it can scale to any viewport without losing detail. Similar to our responsive images, we wanted to create multiple versions of the SVG map at different levels of detail, and decide which map to use at run time. Let there be colour The national view after all results are declared: Zooming & panning Labelling. Getting Started with SVG Gradients. While there are many arguments for and against using SVG gradients over CSS gradients, for this article we will focus on how to get started with SVG gradients if this happens to best suit your needs.

Getting Started with SVG Gradients

Using SVG gradients allows us to almost effortlessly fill in a complex shape with custom gradients and has the advantage over CSS gradients of living in the DOM. This approach especially comes in handy when, for example, a gradient is essential to your artwork. While our CSS styling will constantly evolve and change, our core artwork will generally remain the same, so we want the code for this artwork to live within the SVG itself, within the DOM. Isomer – an isometric graphics library for HTML5 canvas. All of the Isomer base classes (Point, Path, and Shape) support the following methods.

Isomer – an isometric graphics library for HTML5 canvas

They each return a new object from the one they were originally called on. Translate Translate accepts a distance in the x, y, and z directions. Translating does not modify the original shape. var Shape = Isomer.Shape;var Point = Isomer.Point; var blue = new Isomer.Color(50, 60, 160);var red = new Isomer.Color(160, 50, 60);var cube = Shape.Prism(Point.ORIGIN); iso.add(cube);/* These methods do not modify the original shape/path/point */ iso.add(cube.translate(0, 0, 1.1), blue); iso.add(cube.translate(0, 0, 2.2), red); Scale Scale accepts a reference point, and 3 scaling factors in the x, y, and z directions respectively.

If only one scaling factor is specified, the object scales in all three directions by this amount. How to Create a Circular Progress Button. A tutorial on how to implement the circular progress button concept by Colin Garven.

How to Create a Circular Progress Button

We are using the SVG line drawing animation technique as described by Jake Archibald to animate the circular progress and provide a success and error state to indicate the final status. View demo Download source Today we are going to show you how to implement a nifty progress button concept. The concept is the fabulous Submit Button by Colin Garven. Take a look at it first to get an idea of what steps need to be done, and enjoy the animation.

There are quite some possibilities for creating this button and the effect. Note that animating SVGs can be problematic for some browsers so it might not work everywhere as expected. So, let’s get started! The Master plan If you have carefully observed Colin’s Dribbble shot, you might have noticed that we’ll need to take care of several states of the button. For the case of a failed submission, we’ll also want an error state style. The Markup The CSS The JavaScript. Matter.js, a 2D rigid body JavaScript physics engine. Lugolabs/circles. Svg.js - A lightweight JavaScript library for manipulating and animating svg. SVGeneration. Fun with SVG Filters - Alan Greenblatt. Svg.js - A lightweight JavaScript library for manipulating and animating svg. SVG Patterns Gallery.

Raphaël—JavaScript Library. What Can You Do With Paper.js? There are many JavaScript frameworks that leverage HTML5. Paper.js is one of these frameworks that uses Document Object Model (DOM) to structure objects in an easy-to-understand manner. It offers creative and neat ways of doing lots of stuff on a Web browser that supports the <canvas> tag. Convert canvas to an image with JavaScript. SVGeezy - a JS plugin for SVG fallbacks. Sketch.js - Simple Canvas-based Drawing for jQuery. Sketch.js has been tested on Chrome (OS X), Firefox (OS X), Safari (OS X), Android Browser (Honeycomb 3.1). It suffers significant performance degradation on mobile browsers due to general HTML5 Canvas performance issues.

Copyright (C) 2011 by Michael Bleigh and Intridea, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.