stack
This commit is contained in:
14
.idea/workspace.xml
generated
14
.idea/workspace.xml
generated
@@ -2,18 +2,10 @@
|
|||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="e30161f9-0e11-4901-861c-a8265e376258" name="Default Changelist" comment="">
|
<list default="true" id="e30161f9-0e11-4901-861c-a8265e376258" name="Default Changelist" comment="">
|
||||||
<change afterPath="$PROJECT_DIR$/lib/src/bezier.dart" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/.idea/libraries/Dart_SDK.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/libraries/Dart_SDK.xml" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/example/.flutter-plugins-dependencies" beforeDir="false" afterPath="$PROJECT_DIR$/example/.flutter-plugins-dependencies" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/CHANGELOG.md" beforeDir="false" afterPath="$PROJECT_DIR$/CHANGELOG.md" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/example/ios/Flutter/flutter_export_environment.sh" beforeDir="false" afterPath="$PROJECT_DIR$/example/ios/Flutter/flutter_export_environment.sh" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/lib/src/bezier.dart" beforeDir="false" afterPath="$PROJECT_DIR$/lib/src/bezier.dart" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/example/lib/main.dart" beforeDir="false" afterPath="$PROJECT_DIR$/example/lib/main.dart" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/pubspec.yaml" beforeDir="false" afterPath="$PROJECT_DIR$/pubspec.yaml" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/example/pubspec.lock" beforeDir="false" afterPath="$PROJECT_DIR$/example/pubspec.lock" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/lib/src/json_extension.dart" beforeDir="false" afterPath="$PROJECT_DIR$/lib/src/json_extension.dart" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/lib/src/note.dart" beforeDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/lib/src/ux_app.dart" beforeDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/lib/ux.dart" beforeDir="false" afterPath="$PROJECT_DIR$/lib/ux.dart" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/pubspec.lock" beforeDir="false" afterPath="$PROJECT_DIR$/pubspec.lock" afterDir="false" />
|
|
||||||
</list>
|
</list>
|
||||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
|
|||||||
@@ -1,4 +1,6 @@
|
|||||||
|
### 0.1.1
|
||||||
|
[*] + bezier
|
||||||
### 0.0.3
|
### 0.0.3
|
||||||
* Added Action Plan
|
[*] + Action Plan
|
||||||
### 0.0.2
|
### 0.0.2
|
||||||
* Added BendBox
|
[*] + BendBox
|
||||||
|
|||||||
@@ -64,7 +64,8 @@ class CubicBezier extends Bezier {
|
|||||||
|
|
||||||
CubicBezier(this.p0, this.p1, this.p2, this.p3);
|
CubicBezier(this.p0, this.p1, this.p2, this.p3);
|
||||||
|
|
||||||
Offset point(double t) => Offset(
|
Offset point(double t) =>
|
||||||
|
Offset(
|
||||||
_cubicBezier(t, p0.dx, p1.dx, p2.dx, p3.dx),
|
_cubicBezier(t, p0.dx, p1.dx, p2.dx, p3.dx),
|
||||||
_cubicBezier(t, p0.dy, p1.dy, p2.dy, p3.dy),
|
_cubicBezier(t, p0.dy, p1.dy, p2.dy, p3.dy),
|
||||||
);
|
);
|
||||||
@@ -84,10 +85,11 @@ class PathBezier extends Bezier {
|
|||||||
PathBezier(this.p0) : _p0 = p0;
|
PathBezier(this.p0) : _p0 = p0;
|
||||||
|
|
||||||
static PathBezier roundedRect(RRect rrect) {
|
static PathBezier roundedRect(RRect rrect) {
|
||||||
return PathBezier(Offset(rrect.left + rrect.tlRadiusX, rrect.top))
|
return PathBezier(Offset(rrect.left + rrect.width / 2, rrect.top))
|
||||||
..lineTo(Offset(rrect.right - rrect.trRadiusX, rrect.top))
|
..lineTo(Offset(rrect.right - rrect.trRadiusX, rrect.top))
|
||||||
..quadTo(
|
..quadTo(
|
||||||
Offset(rrect.right, rrect.top), Offset(rrect.right, rrect.trRadiusY))
|
Offset(rrect.right, rrect.top),
|
||||||
|
Offset(rrect.right, rrect.top + rrect.trRadiusY))
|
||||||
..lineTo(Offset(rrect.right, rrect.bottom - rrect.brRadiusY))
|
..lineTo(Offset(rrect.right, rrect.bottom - rrect.brRadiusY))
|
||||||
..quadTo(Offset(rrect.right, rrect.bottom),
|
..quadTo(Offset(rrect.right, rrect.bottom),
|
||||||
Offset(rrect.right - rrect.brRadiusX, rrect.bottom))
|
Offset(rrect.right - rrect.brRadiusX, rrect.bottom))
|
||||||
@@ -96,12 +98,13 @@ class PathBezier extends Bezier {
|
|||||||
Offset(rrect.left, rrect.bottom - rrect.blRadiusY))
|
Offset(rrect.left, rrect.bottom - rrect.blRadiusY))
|
||||||
..lineTo(Offset(rrect.left, rrect.top + rrect.tlRadiusX))
|
..lineTo(Offset(rrect.left, rrect.top + rrect.tlRadiusX))
|
||||||
..quadTo(Offset(rrect.left, rrect.top),
|
..quadTo(Offset(rrect.left, rrect.top),
|
||||||
Offset(rrect.left + rrect.tlRadiusX, rrect.top));
|
Offset(rrect.left + rrect.tlRadiusX, rrect.top))
|
||||||
|
..lineTo(Offset(rrect.left + rrect.width / 2, rrect.top));
|
||||||
}
|
}
|
||||||
|
|
||||||
_add(Bezier bezier, Offset pn) {
|
_add(Bezier bezier, Offset pn) {
|
||||||
_curves.add(bezier);
|
|
||||||
final bl = bezierLength(bezier);
|
final bl = bezierLength(bezier);
|
||||||
|
_curves.add(bezier);
|
||||||
_lens.add(bl);
|
_lens.add(bl);
|
||||||
_length += bl;
|
_length += bl;
|
||||||
_p0 = pn;
|
_p0 = pn;
|
||||||
@@ -114,22 +117,30 @@ class PathBezier extends Bezier {
|
|||||||
cubeTo(Offset p1, Offset p2, Offset p3) =>
|
cubeTo(Offset p1, Offset p2, Offset p3) =>
|
||||||
_add(CubicBezier(_p0, p1, p2, p3), p3);
|
_add(CubicBezier(_p0, p1, p2, p3), p3);
|
||||||
|
|
||||||
relativeLineTo(Offset p1) => lineTo(
|
relativeLineTo(Offset p1) =>
|
||||||
|
lineTo(
|
||||||
p1 + _p0,
|
p1 + _p0,
|
||||||
);
|
);
|
||||||
|
|
||||||
relativeQuadTo(Offset p1, Offset p2) => quadTo(
|
relativeQuadTo(Offset p1, Offset p2) =>
|
||||||
|
quadTo(
|
||||||
p1 + p0,
|
p1 + p0,
|
||||||
p1 + p2 + p0,
|
p1 + p2 + p0,
|
||||||
);
|
);
|
||||||
|
|
||||||
relativeCubeTo(Offset p1, Offset p2, Offset p3) => cubeTo(
|
relativeCubeTo(Offset p1, Offset p2, Offset p3) =>
|
||||||
|
cubeTo(
|
||||||
p0 + p1,
|
p0 + p1,
|
||||||
p0 + p1 + p2,
|
p0 + p1 + p2,
|
||||||
p0 + p1 + p2 + p3,
|
p0 + p1 + p2 + p3,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
Offset point(double t) {
|
Offset point(double t) {
|
||||||
|
if (t > 1) {
|
||||||
|
t = t - t.floor();
|
||||||
|
}
|
||||||
|
|
||||||
if (_length == 0) return p0;
|
if (_length == 0) return p0;
|
||||||
var distance = _length * t;
|
var distance = _length * t;
|
||||||
var index = 0;
|
var index = 0;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
name: ux
|
name: ux
|
||||||
description: UX Kit
|
description: UX Kit
|
||||||
version: 0.1.0
|
version: 0.1.1
|
||||||
author: Alexandru Agrapine <alex@swipelab.co>
|
author: Alexandru Agrapine <alex@swipelab.co>
|
||||||
homepage: https://swipelab.co/ux.html
|
homepage: https://swipelab.co/ux.html
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user