This commit is contained in:
alex
2021-03-15 23:21:06 +02:00
parent a6f3d63d68
commit 8626e8c2c6
4 changed files with 27 additions and 22 deletions

14
.idea/workspace.xml generated
View File

@@ -2,18 +2,10 @@
<project version="4">
<component name="ChangeListManager">
<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$/example/.flutter-plugins-dependencies" beforeDir="false" afterPath="$PROJECT_DIR$/example/.flutter-plugins-dependencies" 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$/example/lib/main.dart" beforeDir="false" afterPath="$PROJECT_DIR$/example/lib/main.dart" 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" />
<change beforePath="$PROJECT_DIR$/CHANGELOG.md" beforeDir="false" afterPath="$PROJECT_DIR$/CHANGELOG.md" 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$/pubspec.yaml" beforeDir="false" afterPath="$PROJECT_DIR$/pubspec.yaml" afterDir="false" />
</list>
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="SHOW_DIALOG" value="false" />

View File

@@ -1,4 +1,6 @@
### 0.1.1
[*] + bezier
### 0.0.3
* Added Action Plan
[*] + Action Plan
### 0.0.2
* Added BendBox
[*] + BendBox

View File

@@ -64,7 +64,8 @@ class CubicBezier extends Bezier {
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.dy, p1.dy, p2.dy, p3.dy),
);
@@ -84,10 +85,11 @@ class PathBezier extends Bezier {
PathBezier(this.p0) : _p0 = p0;
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))
..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))
..quadTo(Offset(rrect.right, rrect.bottom),
Offset(rrect.right - rrect.brRadiusX, rrect.bottom))
@@ -96,12 +98,13 @@ class PathBezier extends Bezier {
Offset(rrect.left, rrect.bottom - rrect.blRadiusY))
..lineTo(Offset(rrect.left, rrect.top + rrect.tlRadiusX))
..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) {
_curves.add(bezier);
final bl = bezierLength(bezier);
_curves.add(bezier);
_lens.add(bl);
_length += bl;
_p0 = pn;
@@ -114,22 +117,30 @@ class PathBezier extends Bezier {
cubeTo(Offset p1, Offset p2, Offset p3) =>
_add(CubicBezier(_p0, p1, p2, p3), p3);
relativeLineTo(Offset p1) => lineTo(
relativeLineTo(Offset p1) =>
lineTo(
p1 + _p0,
);
relativeQuadTo(Offset p1, Offset p2) => quadTo(
relativeQuadTo(Offset p1, Offset p2) =>
quadTo(
p1 + p0,
p1 + p2 + p0,
);
relativeCubeTo(Offset p1, Offset p2, Offset p3) => cubeTo(
relativeCubeTo(Offset p1, Offset p2, Offset p3) =>
cubeTo(
p0 + p1,
p0 + p1 + p2,
p0 + p1 + p2 + p3,
);
Offset point(double t) {
if (t > 1) {
t = t - t.floor();
}
if (_length == 0) return p0;
var distance = _length * t;
var index = 0;

View File

@@ -1,6 +1,6 @@
name: ux
description: UX Kit
version: 0.1.0
version: 0.1.1
author: Alexandru Agrapine <alex@swipelab.co>
homepage: https://swipelab.co/ux.html