Skip to content

Instantly share code, notes, and snippets.

@flar
flar / gist:60b95e86c0d641be1d7505d75605fe48
Last active November 29, 2023 23:29
Dart program to compute divisions of a quarter circle based on a pixel error metric.
import 'dart:math';
class Point {
Point(this.x, this.y);
double x;
double y;
operator+(Point p) { return Point(x + p.x, y + p.y); }
operator*(double v) { return Point(x * v, y * v); }
@flar
flar / main.dart
Last active January 23, 2021 00:12
Workaround for Image widget not applying the filter quality unless you force it to change size via the "fit" operation
import 'dart:typed_data';
import 'dart:ui' as ui;
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
void main() {
runApp(ImageTestApp());
}
@flar
flar / main.dart
Created October 22, 2020 01:57
Testing 3 ways to animate a transform on a widget: Transform(), FilteredWidget(), and Transform(methd: TransformMethod.bitmapTransform)
import 'dart:math';
import 'dart:ui';
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@flar
flar / main.dart
Created October 17, 2020 02:38
Testing 3 ways to animate a transform on a widget: Transform(), FilteredWidget(), and Transform(cacheTransform: ...)
import 'dart:math';
import 'dart:ui';
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@flar
flar / main.dart
Created July 11, 2020 00:45
Effect of filtering an image with different BoxFit settings
import 'dart:ui';
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
@flar
flar / main.dart
Last active July 10, 2020 19:11
Using ImageFiltered instead of BackdropFilter to blur text
import 'dart:ui';
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
builder: (_, __) => Scaffold(
@flar
flar / gist:5f34fff7bea958ca1175d196de0fe617
Last active June 30, 2020 23:35
Variation of image animation benchmark used in https://github.com/nazarcybulskij/UI_benchmark. This version uses RepaintBoundary widgets around the Image assets to avoid reconstructing and repainting them on every frame.
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
@flar
flar / main.dart
Created April 7, 2020 22:25
complex render benchmark for testing animations
import 'dart:math';
import 'dart:ui';
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@flar
flar / main.dart
Created March 10, 2020 23:37
Using Transform vs ImageFiltered to rotate widget
import 'dart:math';
import 'dart:ui';
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@flar
flar / main.dart
Last active March 11, 2020 00:20
Demonstration of using Transform vs ImageFiltered
import 'dart:math';
import 'dart:ui';
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {