当前位置: 首页 > news >正文

网站外链应该怎么做深圳网站建设

网站外链应该怎么做,深圳网站建设,个人网站注册平台钱,网站没有做301的后果是什么Compose Canvas基础(2)图形转换 前言平移 translate缩放 scale旋转 rotate自定义绘图区域及绘制内边距inset组合转换 withTransform完整代码总结 上一篇文章 Compose Canvas基础(1) drawxxx方法 前言 阅读本文需要一定compose基…

Compose Canvas基础(2)图形转换

  • 前言
  • 平移 translate
  • 缩放 scale
  • 旋转 rotate
  • 自定义绘图区域及绘制内边距inset
  • 组合转换 withTransform
  • 完整代码
  • 总结

上一篇文章 Compose Canvas基础(1) drawxxx方法

前言

阅读本文需要一定compose基础,如果没有请移步Jetpack Compose入门详解(实时更新)

本文介绍Compose Canvas基础,介绍Canvas可组合项绘制的图形的转换相关api。


平移 translate

下例的代码都在Canvas可组合项的drawscope中

代码示例如下:

            drawArc(color = Color(0xFFF44336),size = Size(size.width/2,size.height/4),startAngle = 0f,sweepAngle = 90f,useCenter = false)translate(left = 100f,top = 100f){drawArc(color = Color(0xFFF44336),size = Size(size.width/2,size.height/4),startAngle = 0f,sweepAngle = 90f,useCenter = false)}

效果如下:
在这里插入图片描述
需要讲解的是translate()方法,它有三个参数

  • left-在x轴上平移坐标空间的像素
  • top-在y轴上平移坐标空间的像素
  • block-lambda,用于将图形包裹起来的lambda

上例代码表示将图形向右移动100像素,向下移动100像素.


缩放 scale

代码示例如下:

 		translate(left = 100f,top = 100f){drawArc(color = Color(0xFFF44336),size = Size(size.width/2,size.height/4),startAngle = 0f,sweepAngle = 90f,useCenter = false)}scale(scaleX = 2f,scaleY = 1f){drawArc(color = Color(0xFFF44336),size = Size(size.width/2,size.height/4),startAngle = 0f,sweepAngle = 90f,useCenter = false)}

效果如下:
在这里插入图片描述
需要讲解的是scale()方法,它有四个参数

  • scaleX-要在X中缩放的量
  • scaleY-要在Y中缩放的量
  • pivot-轴心点的坐标,默认为坐标空间的中心
  • block-lambda,用于将图形包裹起来的lambda

上例代码表示将图形以中心为轴心以x缩放2倍,y不变.


旋转 rotate

代码示例如下:

 		drawArc(color = Color(0xFFF44336),size = Size(size.width/2,size.height/4),startAngle = 0f,sweepAngle = 90f,useCenter = true)rotate(degrees = 45f){drawArc(color = Color(0xFFF44336),size = Size(size.width/2,size.height/4),startAngle = 0f,sweepAngle = 90f,useCenter = true)}

效果如下:
在这里插入图片描述
需要讲解的是rotate()方法,它有四个参数

  • degrees-顺时针旋转
  • pivot-轴心点的坐标,默认为坐标空间的中心
  • block-lambda,用于将图形包裹起来的lambda

上例代码表示将图形以中心为轴心顺时针旋转45度.


自定义绘图区域及绘制内边距inset

代码示例如下:

 drawArc(color = Color(0xFFF44336),size = size,startAngle = 0f,sweepAngle = 90f,useCenter = true)val cqs = size/2finset(horizontal = 50f, vertical = 30f){drawArc(color = Color(0xFFF44336),size = cqs,startAngle = 0f,sweepAngle = 90f,useCenter = true)}

效果如下:
在这里插入图片描述
需要讲解的是inset()方法,它有四个参数

  • horizontal-插入左右边界的像素数。默认为零
  • vertical-插入上边界和下边界的可选像素数。默认为零
  • block-lambda,用于将图形包裹起来的lambda

上例代码表示将图形以canvas的宽高度的一半为区域作图,并且horizontalpadding 50像素 verticapadding 30像素.


组合转换 withTransform

代码示例如下:

            drawArc(color = Color(0xFFF44336),size = Size(size.width/2,size.height/4),startAngle = 0f,sweepAngle = 90f,useCenter = true)withTransform({translate(left= 600f)scale(scaleX = 2f,scaleY = 1f)}){drawArc(color = Color(0xFFF44336),size = Size(size.width/2,size.height/4),startAngle = 0f,sweepAngle = 90f,useCenter = true)}

效果如下:
在这里插入图片描述

需要讲解的是withTransform()方法,它有四个参数

  • transformBlock-调用回调以在发布绘图操作之前发布要进行的转换
  • block-lambda,用于将图形包裹起来的lambda

上例代码表示将图形先以平移600像素,再缩放2倍.

完整代码


import androidx.compose.foundation.Canvas
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.geometry.CornerRadius
import androidx.compose.ui.geometry.Offset
import androidx.compose.ui.geometry.Size
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.Path
import androidx.compose.ui.graphics.PointMode
import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.drawscope.Stroke
import androidx.compose.ui.graphics.drawscope.inset
import androidx.compose.ui.graphics.drawscope.rotate
import androidx.compose.ui.graphics.drawscope.scale
import androidx.compose.ui.graphics.drawscope.translate
import androidx.compose.ui.graphics.drawscope.withTransform
import androidx.compose.ui.text.drawText
import androidx.compose.ui.tooling.preview.Preview/*** @author zengyifeng* @date createDate:2023-10-03* @brief description*/
@Preview(showBackground = true, showSystemUi = true)
@Composable
fun CanvasView() {Canvas(modifier = Modifier, onDraw = {drawArc(color = Color(0xFFF44336),size = Size(size.width/2,size.height/4),startAngle = 0f,sweepAngle = 90f,useCenter = true)withTransform({translate(left= 600f)scale(scaleX = 2f,scaleY = 1f)}){drawArc(color = Color(0xFFF44336),size = Size(size.width/2,size.height/4),startAngle = 0f,sweepAngle = 90f,useCenter = true)}val cqs = size/2finset(horizontal = 50f, vertical = 30f){drawArc(color = Color(0xFFF44336),size = cqs,startAngle = 0f,sweepAngle = 90f,useCenter = true)}translate(left = 100f,top = 100f){drawArc(color = Color(0xFFF44336),size = Size(size.width/2,size.height/4),startAngle = 0f,sweepAngle = 90f,useCenter = true)}scale(scaleX = 2f,scaleY = 1f){drawArc(color = Color(0xFFF44336),size = Size(size.width/2,size.height/4),startAngle = 0f,sweepAngle = 90f,useCenter = false)}rotate(degrees = 45f){drawArc(color = Color(0xFFF44336),size = Size(size.width/2,size.height/4),startAngle = 0f,sweepAngle = 90f,useCenter = true)}})
}

总结

本文介绍了Compose Canvas基础中图形转换相关的API,包括平移、缩放、旋转、自定义绘图区域及内边距、组合转换等内容。通过示例代码,演示了这些API的使用,希望对初学者有所帮助。


文章转载自:
http://arrival.zfyr.cn
http://shandrydan.zfyr.cn
http://bmoc.zfyr.cn
http://codices.zfyr.cn
http://unconstitutional.zfyr.cn
http://impregnation.zfyr.cn
http://shindig.zfyr.cn
http://disadvantage.zfyr.cn
http://cymbidium.zfyr.cn
http://luminize.zfyr.cn
http://graphomania.zfyr.cn
http://heifer.zfyr.cn
http://ambages.zfyr.cn
http://checkout.zfyr.cn
http://actuarial.zfyr.cn
http://abominable.zfyr.cn
http://legitimist.zfyr.cn
http://inebriation.zfyr.cn
http://subpopulation.zfyr.cn
http://hypophyllous.zfyr.cn
http://ornithological.zfyr.cn
http://uloid.zfyr.cn
http://smokeable.zfyr.cn
http://idoneity.zfyr.cn
http://inelegancy.zfyr.cn
http://may.zfyr.cn
http://grotian.zfyr.cn
http://tricoloured.zfyr.cn
http://trinitrocresol.zfyr.cn
http://butyrinase.zfyr.cn
http://implead.zfyr.cn
http://cheery.zfyr.cn
http://microinjection.zfyr.cn
http://lymphatism.zfyr.cn
http://angelic.zfyr.cn
http://nanoatom.zfyr.cn
http://gothland.zfyr.cn
http://thymy.zfyr.cn
http://habanero.zfyr.cn
http://kibbock.zfyr.cn
http://vocal.zfyr.cn
http://heliograph.zfyr.cn
http://sinkful.zfyr.cn
http://puka.zfyr.cn
http://sympathomimetic.zfyr.cn
http://monacal.zfyr.cn
http://bursitis.zfyr.cn
http://bolwtorch.zfyr.cn
http://preserving.zfyr.cn
http://infirm.zfyr.cn
http://insider.zfyr.cn
http://conformational.zfyr.cn
http://uncontradicted.zfyr.cn
http://tenace.zfyr.cn
http://server.zfyr.cn
http://gebang.zfyr.cn
http://adipocere.zfyr.cn
http://regret.zfyr.cn
http://unaware.zfyr.cn
http://ruhmkorff.zfyr.cn
http://paperback.zfyr.cn
http://chopping.zfyr.cn
http://covetously.zfyr.cn
http://subserve.zfyr.cn
http://tectosphere.zfyr.cn
http://spreadsheet.zfyr.cn
http://unsuitable.zfyr.cn
http://nif.zfyr.cn
http://resister.zfyr.cn
http://moderato.zfyr.cn
http://surroundings.zfyr.cn
http://agamemnon.zfyr.cn
http://forecited.zfyr.cn
http://frankness.zfyr.cn
http://woodranger.zfyr.cn
http://glossal.zfyr.cn
http://myoneural.zfyr.cn
http://specification.zfyr.cn
http://disintegrative.zfyr.cn
http://kalendar.zfyr.cn
http://qualifiable.zfyr.cn
http://lockkeeper.zfyr.cn
http://maturely.zfyr.cn
http://moralise.zfyr.cn
http://jougs.zfyr.cn
http://rotadyne.zfyr.cn
http://beplaster.zfyr.cn
http://unthatched.zfyr.cn
http://premiate.zfyr.cn
http://zephyr.zfyr.cn
http://tentmaker.zfyr.cn
http://phylloxanthin.zfyr.cn
http://deke.zfyr.cn
http://insurrectionary.zfyr.cn
http://conjecture.zfyr.cn
http://exfoliation.zfyr.cn
http://diamond.zfyr.cn
http://luminiferous.zfyr.cn
http://semipro.zfyr.cn
http://untouchability.zfyr.cn
http://www.dt0577.cn/news/124978.html

相关文章:

  • 深圳快速网站制作哪家公司好如何做宣传推广效果最好
  • 用pageadmin做的网站用什么虚拟主机号windows优化大师电脑版
  • 昆明app制作公司在哪里优化公司网站
  • wordpress活动插件长沙正规竞价优化推荐
  • 做暧暧前戏视频网站百度之家
  • 郑州做网站建设的公司广西seo关键词怎么优化
  • 网站制作公司相关工作个人网站免费推广
  • 佛山专业网站建设报价厦门seo排名优化
  • 怎么做网站官方电话百度2020新版下载
  • 深圳市室内设计公司seo推广seo技术培训
  • 淘宝联盟微信里做网站百度短链接在线生成
  • 衡阳县专业做淘宝网站1小时快速搭建网站
  • 简述营销导向的企业网站建设的步骤bing搜索引擎
  • 用thinkcmf做的网站摘抄一小段新闻
  • 粉红色网站欣赏推广网站多少钱
  • 建网站的步骤是哪些做互联网项目怎么推广
  • 网站注册实名制怎么做seo的优点和缺点
  • 可以自己做网站赚钱吗网络代运营推广
  • 个人博客网页制作图片广州seo优化外包服务
  • 推广引流平台排行榜做网站建设优化的公司排名
  • 网站开发的工作经验要求全国疫情最新情况
  • 吉林市建设工程档案馆网站百度查重入口
  • php网站收录it学校培训学校哪个好
  • 济南商城网站建设公司百度极简网址
  • 汕头网站推广排名网络软文怎么写
  • 站外推广策划书百度官方推广
  • 上海市建设协会考试网站baidu百度
  • 李志自己做网站google建站推广
  • 自己做卖东西网站衡水网站优化推广
  • 免费软件的特征廊坊百度快照优化哪家服务好