Home
last modified time | relevance | path

Searched +full:- +full:m (Results 1 – 25 of 172) sorted by relevance

1234567

/lvgl-latest/src/misc/
Dlv_matrix.c46 matrix->m[0][0] = 1.0f; in lv_matrix_identity()
47 matrix->m[0][1] = 0.0f; in lv_matrix_identity()
48 matrix->m[0][2] = 0.0f; in lv_matrix_identity()
49 matrix->m[1][0] = 0.0f; in lv_matrix_identity()
50 matrix->m[1][1] = 1.0f; in lv_matrix_identity()
51 matrix->m[1][2] = 0.0f; in lv_matrix_identity()
52 matrix->m[2][0] = 0.0f; in lv_matrix_identity()
53 matrix->m[2][1] = 0.0f; in lv_matrix_identity()
54 matrix->m[2][2] = 1.0f; in lv_matrix_identity()
61 matrix->m[0][2] += dx; in lv_matrix_translate()
[all …]
/lvgl-latest/src/libs/thorvg/
DtvgMath.cpp2 * Copyright (c) 2021 - 2024 the ThorVG project. All rights reserved.
28 #define BEZIER_EPSILON 1e-2f
40 Point diff = {pt2.x - pt1.x, pt2.y - pt1.y}; in _lineLengthApprox()
41 if (diff.x < 0) diff.x = -diff.x; in _lineLengthApprox()
42 if (diff.y < 0) diff.y = -diff.y; in _lineLengthApprox()
49 Point diff = {pt2.x - pt1.x, pt2.y - pt1.y}; in _lineLength()
61 if (fabsf(len - chord) > BEZIER_EPSILON) { in _bezLength()
85 if (fabsf(length - at) < BEZIER_EPSILON || fabsf(smallest - biggest) < 1e-3f) { in _bezAt()
112 auto r = ((-0.0464964749f * s + 0.15931422f) * s - 0.327622764f) * s * a + a; in atan2()
113 if (fabsf(y) > fabsf(x)) r = 1.57079637f - r; in atan2()
[all …]
DtvgMath.h2 * Copyright (c) 2021 - 2024 the ThorVG project. All rights reserved.
40 #define FLOAT_EPSILON 1.0e-06f //1.192092896e-07f
70 return tvg::zero(a - b); in equal()
85 void rotate(Matrix* m, float degree);
86 bool inverse(const Matrix* m, Matrix* out);
87 bool identity(const Matrix* m);
91 static inline bool rightAngle(const Matrix& m) in rightAngle() argument
93 auto radian = fabsf(tvg::atan2(m.e21, m.e11)); in rightAngle()
99 static inline bool skewed(const Matrix& m) in skewed() argument
101 return !tvg::zero(m.e21 + m.e12); in skewed()
[all …]
DtvgLottieBuilder.cpp2 * Copyright (c) 2023 - 2024 the ThorVG project. All rights reserved.
44 static void _rotationXYZ(Matrix* m, float degreeX, float degreeY, float degreeZ) in _rotationXYZ() argument
53 m->e11 = cy * cz; in _rotationXYZ()
54 m->e12 = -cy * sz; in _rotationXYZ()
55 m->e21 = sx * sy * cz + cx * sz; in _rotationXYZ()
56 m->e22 = -sx * sy * sz + cx * cz; in _rotationXYZ()
60 static void _rotationZ(Matrix* m, float degree) in _rotationZ() argument
64 m->e11 = cosf(radian); in _rotationZ()
65 m->e12 = -sinf(radian); in _rotationZ()
66 m->e21 = sinf(radian); in _rotationZ()
[all …]
DtvgPaint.h2 * Copyright (c) 2020 - 2024 the ThorVG project. All rights reserved.
58 Matrix m; //input matrix member
67 m.e11 = 1.0f; in update()
68 m.e12 = 0.0f; in update()
69 m.e21 = 0.0f; in update()
70 m.e22 = 1.0f; in update()
71 m.e31 = 0.0f; in update()
72 m.e32 = 0.0f; in update()
73 m.e33 = 1.0f; in update()
74 tvg::scale(&m, scale, scale); in update()
[all …]
DtvgSvgSceneBuilder.cpp2 * Copyright (c) 2020 - 2024 the ThorVG project. All rights reserved.
60 shape->bounds(&x, &y, &w, &h, false); in _boundingBox()
62 if (auto strokeW = shape->strokeWidth()) { in _boundingBox()
65 w -= strokeW; in _boundingBox()
66 h -= strokeW; in _boundingBox()
76 text->bounds(&x, &y, &w, &h, false); in _boundingBox()
83 gradTransf->e13 = gradTransf->e13 * mBBox->e11 + mBBox->e13; in _transformMultiply()
84 gradTransf->e12 *= mBBox->e11; in _transformMultiply()
85 gradTransf->e11 *= mBBox->e11; in _transformMultiply()
87 gradTransf->e23 = gradTransf->e23 * mBBox->e22 + mBBox->e23; in _transformMultiply()
[all …]
DtvgLottieLoader.cpp2 * Copyright (c) 2023 - 2024 the ThorVG project. All rights reserved.
40 builder->update(comp, frameNo); in run()
49 builder->build(comp); in run()
97 w = static_cast<float>(comp->w); in header()
98 h = static_cast<float>(comp->h); in header()
99 frameDuration = comp->duration(); in header()
100 frameCnt = comp->frameCnt(); in header()
101 frameRate = comp->frameRate; in header()
122 --depth; in header()
192 frameCnt = (endFrame - startFrame); in header()
[all …]
DtvgPaint.cpp2 * Copyright (c) 2020 - 2024 the ThorVG project. All rights reserved.
38 switch (paint->type()) { \
39 case Type::Shape: ret = P((Shape*)paint)->METHOD; break; \
40 case Type::Scene: ret = P((Scene*)paint)->METHOD; break; \
41 case Type::Picture: ret = P((Picture*)paint)->METHOD; break; \
42 case Type::Text: ret = P((Text*)paint)->METHOD; break; \
72 renderer->viewport({0, 0, 0, 0}); in _clipRect()
86 auto ptsCnt = shape->pathCoords(&pts); in _compFastTrack()
92 auto& rm = P(cmpTarget)->transform(); in _compFastTrack()
108 …if ((tvg::equal(pt1->x, pt2->x) && tvg::equal(pt2->y, pt3->y) && tvg::equal(pt3->x, pt4->x) && tvg… in _compFastTrack()
[all …]
/lvgl-latest/src/draw/vg_lite/
Dlv_vg_lite_utils.c88 LV_LOG_USER("Feature-%d: %s\t - %s", in lv_vg_lite_dump_info()
315 LV_ASSERT(path->path != NULL); in lv_vg_lite_path_dump_info()
316 uint8_t fmt_len = lv_vg_lite_path_format_len(path->format); in lv_vg_lite_path_dump_info()
317 size_t len = path->path_length / fmt_len; in lv_vg_lite_path_dump_info()
321 LV_LOG_USER("address: %p", (void *)path->path); in lv_vg_lite_path_dump_info()
323 LV_LOG_USER("bounding box: (%0.2f, %0.2f) - (%0.2f, %0.2f)", in lv_vg_lite_path_dump_info()
324 path->bounding_box[0], path->bounding_box[1], in lv_vg_lite_path_dump_info()
325 path->bounding_box[2], path->bounding_box[3]); in lv_vg_lite_path_dump_info()
326 LV_LOG_USER("format: %d", (int)path->format); in lv_vg_lite_path_dump_info()
327 LV_LOG_USER("quality: %d", (int)path->quality); in lv_vg_lite_path_dump_info()
[all …]
/lvgl-latest/src/others/vg_lite_tvg/
Dvg_lite_tvg.cpp51 /* clang-format off */
59 #define VLC_GET_ARG(CUR, INDEX) vlc_get_arg((cur + (INDEX) * fmt_len), path->format);
73 #define LERP(v1, v2, w) ((v1) * (w) + (v2) * (1.0f - (w)))
82 (((number) + ((align_bytes)-1)) & ~((align_bytes)-1))
84 #define VG_LITE_IS_ALIGNED(num, align) (((uintptr_t)(num) & ((align)-1)) == 0)
89 /* clang-format on */
274 uint8_t * dest = (uint8_t *)dest_buf->memory; in convert()
275 const uint8_t * src = (const uint8_t *)src_buf->memory; in convert()
276 vg_lite_uint32_t h = src_buf->height; in convert()
278 while(h--) { in convert()
[all …]
Dvg_lite_matrix.c47 matrix->m[0][0] = 1.0f; in vg_lite_identity()
48 matrix->m[0][1] = 0.0f; in vg_lite_identity()
49 matrix->m[0][2] = 0.0f; in vg_lite_identity()
50 matrix->m[1][0] = 0.0f; in vg_lite_identity()
51 matrix->m[1][1] = 1.0f; in vg_lite_identity()
52 matrix->m[1][2] = 0.0f; in vg_lite_identity()
53 matrix->m[2][0] = 0.0f; in vg_lite_identity()
54 matrix->m[2][1] = 0.0f; in vg_lite_identity()
55 matrix->m[2][2] = 1.0f; in vg_lite_identity()
58 matrix->scaleX = 1.0f; in vg_lite_identity()
[all …]
/lvgl-latest/src/draw/sw/
Dlv_draw_sw_mask.c26 #define circle_cache_mutex LV_GLOBAL_DEFAULT()->draw_info.circle_cache_mutex
27 #define _circle_cache LV_GLOBAL_DEFAULT()->sw_circle_cache
102 res = dsc->cb(mask_buf, abs_x, abs_y, len, masks[i]); in lv_draw_sw_mask_apply()
114 if(pdsc->type == LV_DRAW_SW_MASK_TYPE_RADIUS) { in lv_draw_sw_mask_free_param()
116 if(radius_p->circle) { in lv_draw_sw_mask_free_param()
117 if(radius_p->circle->life < 0) { in lv_draw_sw_mask_free_param()
118 lv_free(radius_p->circle->cir_opa); in lv_draw_sw_mask_free_param()
119 lv_free(radius_p->circle); in lv_draw_sw_mask_free_param()
122 radius_p->circle->used_cnt--; in lv_draw_sw_mask_free_param()
148 p1y--; in lv_draw_sw_mask_line_points_init()
[all …]
Dlv_draw_sw_vector.c57 rect->x = area->x1; in lv_area_to_tvg()
58 rect->y = area->y1; in lv_area_to_tvg()
59 rect->w = lv_area_get_width(area) - 1; in lv_area_to_tvg()
60 rect->h = lv_area_get_height(area) - 1; in lv_area_to_tvg()
65 color->r = c->red; in lv_color_to_tvg()
66 color->g = c->green; in lv_color_to_tvg()
67 color->b = c->blue; in lv_color_to_tvg()
68 color->a = LV_OPA_MIX2(c->alpha, opa); in lv_color_to_tvg()
71 static void lv_matrix_to_tvg(Tvg_Matrix * tm, const lv_matrix_t * m) in lv_matrix_to_tvg() argument
73 tm->e11 = m->m[0][0]; in lv_matrix_to_tvg()
[all …]
/lvgl-latest/libs/nema_gfx/include/
Dnema_matrix4x4.h15 * NEMAGFX API. THE UNMODIFIED, NORMATIVE VERSIONS OF THINK-SILICON NEMAGFX
17 * https://think-silicon.com/products/software/nemagfx-api
41 * \param m Matrix to be loaded
44 void nema_mat4x4_load_identity(nema_matrix4x4_t m);
48 * \param m Result Matrix
53 void nema_mat4x4_mul(nema_matrix4x4_t m,
63 * \param m Matrix to be multiplied
70 void nema_mat4x4_mul_vec(nema_matrix4x4_t m, float *x, float *y, float *z, float *w);
72 // ------------------------------------------------------------------------------------
73 // Object Transformation - ModelView Matrix
[all …]
Dnema_matrix3x3.h15 * NEMAGFX API. THE UNMODIFIED, NORMATIVE VERSIONS OF THINK-SILICON NEMAGFX
17 * https://think-silicon.com/products/software/nemagfx-api
41 * \param m Matrix to be loaded
44 void nema_mat3x3_load_identity(nema_matrix3x3_t m);
47 /** \brief Copy matrix _m to matrix m
49 * \param m Destination matrix
50 * \param m Source matrix
54 nema_mat3x3_copy(nema_matrix3x3_t m, nema_matrix3x3_t _m);
58 * \param m Matrix to apply transformation
63 void nema_mat3x3_translate (nema_matrix3x3_t m, float tx, float ty);
[all …]
Dnema_vg.h15 * NEMAGFX API. THE UNMODIFIED, NORMATIVE VERSIONS OF THINK-SILICON NEMAGFX
17 * https://think-silicon.com/products/software/nemagfx-api
47 // -------------------------------------------------------------------------------
49 // -------------------------------------------------------------------------------
62 * \param width Stencil buffer width - Must be the first multiple of 4 of the framebuffer width
63 * \param height Stencil buffer height - Must be the first multiple of 4 of the framebuffer height
71 * \param width Stencil buffer width - Must be the first multiple of 4 of the framebuffer width
72 * \param height Stencil buffer height - Must be the first multiple of 4 of the framebuffer height
98 // -------------------------------------------------------------------------------
100 // -------------------------------------------------------------------------------
[all …]
/lvgl-latest/tests/src/test_cases/
Dtest_svg.c9 "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>"
10 …"<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.d…
11 "<!-- some comment content <tag> <desc> ... -->"
54 lv_array_push_back(&node3->attrs, &attr1); in testNodeTree()
56 TEST_ASSERT_EQUAL(lv_array_size(&node3->attrs), 1); in testNodeTree()
57 TEST_ASSERT_EQUAL_FLOAT((LV_ARRAY_GET(&node3->attrs, 0, lv_svg_attr_t))->value.fval, 10.0f); in testNodeTree()
68 TEST_ASSERT_EQUAL(lv_array_size(&svg_node1->attrs), 2); in testSvgElement()
69 … TEST_ASSERT_EQUAL_STRING((LV_ARRAY_GET(&svg_node1->attrs, 0, lv_svg_attr_t))->value.sval, "1.2"); in testSvgElement()
70 … TEST_ASSERT_EQUAL_STRING((LV_ARRAY_GET(&svg_node1->attrs, 1, lv_svg_attr_t))->value.sval, "tiny"); in testSvgElement()
77 TEST_ASSERT_EQUAL(0, LV_ARRAY_GET(&svg_node_viewbox->attrs, 0, lv_svg_attr_t)->class_type); in testSvgElement()
[all …]
/lvgl-latest/src/libs/thorvg/rapidjson/
Dschema.h1 // Tencent is pleased to support the open source community by making RapidJSON available->
3 // Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip-> All rights reserved->
6 // in compliance with the License-> You may obtain a copy of the License at
8 // http://opensource->org/licenses/MIT
12 // CONDITIONS OF ANY KIND, either express or implied-> See the License for the
13 // specific language governing permissions and limitations under the License->
60 RAPIDJSON_DIAG_OFF(weak-vtables)
61 RAPIDJSON_DIAG_OFF(exit-time-destructors)
62 RAPIDJSON_DIAG_OFF(c++98-compat-pedantic)
63 RAPIDJSON_DIAG_OFF(variadic-macros)
[all …]
Ddocument.h34 RAPIDJSON_DIAG_OFF(switch-enum)
35 RAPIDJSON_DIAG_OFF(c++98-compat)
113 //! Name-value pair in a JSON object value.
169 …\tparam Encoding Encoding of the value. (Even non-string values need to have the same encoding …
180 pointer-based implementation, if your platform doesn't provide
199 //! Non-constant iterator type
226 \param it (Non-const) iterator to copy from
229 that is "less const". Especially, creating a non-constant iterator
231 \li const -> non-const (not ok)
232 \li const -> const (ok)
[all …]
Dpointer.h25 RAPIDJSON_DIAG_OFF(switch-enum)
45 can access multiple-level depth of DOM tree with single API call.
49 it can be used to resolve a specific value in multiple documents, or sub-tree
56 involves parsing and dynamic memory allocation. A special constructor with user-
102 \param source A null-terminated, string or URI fragment representation of JSON pointer.
103 …User supplied allocator for this pointer. If no allocator is provided, it creates a self-owned one.
113 …User supplied allocator for this pointer. If no allocator is provided, it creates a self-owned one.
125 …User supplied allocator for this pointer. If no allocator is provided, it creates a self-owned one.
132 //! Constructor with user-supplied tokens.
143 #define NAME(s) { s, sizeof(s) / sizeof(s[0]) - 1, kPointerInvalidIndex }
[all …]
/lvgl-latest/src/libs/thorvg/rapidjson/internal/
Dregex.h25 RAPIDJSON_DIAG_OFF(switch-enum) in RAPIDJSON_DIAG_OFF()
80 - \c ab Concatenation in RAPIDJSON_DIAG_OFF()
81 - \c a|b Alternation in RAPIDJSON_DIAG_OFF()
82 - \c a? Zero or one in RAPIDJSON_DIAG_OFF()
83 - \c a* Zero or more in RAPIDJSON_DIAG_OFF()
84 - \c a+ One or more in RAPIDJSON_DIAG_OFF()
85 - \c a{3} Exactly 3 times in RAPIDJSON_DIAG_OFF()
86 - \c a{3,} At least 3 times in RAPIDJSON_DIAG_OFF()
87 - \c a{3,5} 3 to 5 times in RAPIDJSON_DIAG_OFF()
88 - \c (ab) Grouping in RAPIDJSON_DIAG_OFF()
[all …]
/lvgl-latest/src/libs/svg/
Dlv_svg_parser.c25 #define MAP_LEN(m) sizeof((m)) / sizeof((m[0])) argument
82 {"viewport-fill", 13, LV_SVG_ATTR_VIEWPORT_FILL},
83 {"viewport-fill-opacity", 21, LV_SVG_ATTR_VIEWPORT_FILL_OPACITY},
104 {"fill-rule", 9, LV_SVG_ATTR_FILL_RULE},
105 {"fill-opacity", 12, LV_SVG_ATTR_FILL_OPACITY},
107 {"stroke-width", 12, LV_SVG_ATTR_STROKE_WIDTH},
108 {"stroke-linecap", 14, LV_SVG_ATTR_STROKE_LINECAP},
109 {"stroke-linejoin", 15, LV_SVG_ATTR_STROKE_LINEJOIN},
110 {"stroke-miterlimit", 17, LV_SVG_ATTR_STROKE_MITER_LIMIT},
111 {"stroke-dasharray", 16, LV_SVG_ATTR_STROKE_DASH_ARRAY},
[all …]
/lvgl-latest/src/draw/nema_gfx/
Dlv_draw_nema_gfx_img.c4 * -----------------------------------------------------------------------------
5 * Copyright (c) 2008-24 Think Silicon Single Member PC
6 * -----------------------------------------------------------------------------
58 lv_result_t res = lv_image_decoder_open(&decoder_dsc, dsc->src, NULL); in _draw_nema_gfx_tile()
64 int32_t img_w = dsc->header.w; in _draw_nema_gfx_tile()
65 int32_t img_h = dsc->header.h; in _draw_nema_gfx_tile()
68 if(lv_area_get_width(&dsc->image_area) >= 0) { in _draw_nema_gfx_tile()
69 tile_area = dsc->image_area; in _draw_nema_gfx_tile()
79 while(tile_area.y1 <= draw_unit->clip_area->y2) { in _draw_nema_gfx_tile()
80 while(tile_area.x1 <= draw_unit->clip_area->x2) { in _draw_nema_gfx_tile()
[all …]
/lvgl-latest/src/libs/tiny_ttf/
Dstb_truetype_htcw.h1 // stb_truetype.h - v1.26htcw (fork to enable streaming and low memory environments)
2 // stb_truetype.h - v1.26 - public domain
3 // authored from 2009-2021 by Sean Barrett / RAD Game Tools
7 // NO SECURITY GUARANTEE -- DO NOT USE THIS ON UNTRUSTED FONT FILES
18 // render glyphs to one-channel bitmaps with antialiasing (box filter)
19 // render glyphs to one-channel SDF bitmaps (signed-distance field/function)
22 // non-MS cmaps
25 // cleartype-style AA?
27 // optimize: build edge-list directly from curves
35 // Daniel Ribeiro Maciel: basic GPOS-based kerning
[all …]
/lvgl-latest/demos/render/
Dlv_demo_render.c219 lv_obj_set_size(obj, DEF_WIDTH - 20, DEF_HEIGHT - 5); in box_shadow_obj_create()
235 {5, -5}, in box_shadow_cb()
236 {-5, 5}, in box_shadow_cb()
237 {-5, -5}, in box_shadow_cb()
361 uint32_t stopAt = startAt + LV_MIN(sizeof(srcs) / sizeof(void *) - startAt, 4); in image_core_cb()
365 uint32_t row = i - startAt; in image_core_cb()
445 {{5, DEF_HEIGHT / 2}, {DEF_WIDTH - 5, DEF_HEIGHT / 2}}, /* - */ in line_cb()
446 {{5, DEF_HEIGHT / 2}, {DEF_WIDTH - 5, DEF_HEIGHT / 2 + 1}}, /* - */ in line_cb()
447 {{5, DEF_HEIGHT / 2}, {DEF_WIDTH - 5, DEF_HEIGHT / 2 - 1}}, /* - */ in line_cb()
448 {{DEF_WIDTH / 2, 5}, {DEF_WIDTH / 2, DEF_HEIGHT - 5}}, /* | */ in line_cb()
[all …]

1234567