中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

國家建筑工程網(wǎng)653seo診斷書

國家建筑工程網(wǎng)653,seo診斷書,化工外貿(mào)網(wǎng)站建設,做網(wǎng)站php和java區(qū)別Compose Canvas基礎(2)圖形轉(zhuǎn)換 前言平移 translate縮放 scale旋轉(zhuǎn) rotate自定義繪圖區(qū)域及繪制內(nèi)邊距inset組合轉(zhuǎn)換 withTransform完整代碼總結(jié) 上一篇文章 Compose Canvas基礎(1) drawxxx方法 前言 閱讀本文需要一定compose基…

Compose Canvas基礎(2)圖形轉(zhuǎn)換

  • 前言
  • 平移 translate
  • 縮放 scale
  • 旋轉(zhuǎn) rotate
  • 自定義繪圖區(qū)域及繪制內(nèi)邊距inset
  • 組合轉(zhuǎn)換 withTransform
  • 完整代碼
  • 總結(jié)

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

前言

閱讀本文需要一定compose基礎,如果沒有請移步Jetpack Compose入門詳解(實時更新)

本文介紹Compose Canvas基礎,介紹Canvas可組合項繪制的圖形的轉(zhuǎn)換相關(guān)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()方法,它有三個參數(shù)

  • 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()方法,它有四個參數(shù)

  • scaleX-要在X中縮放的量
  • scaleY-要在Y中縮放的量
  • pivot-軸心點的坐標,默認為坐標空間的中心
  • block-lambda,用于將圖形包裹起來的lambda

上例代碼表示將圖形以中心為軸心以x縮放2倍,y不變.


旋轉(zhuǎn) 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()方法,它有四個參數(shù)

  • degrees-順時針旋轉(zhuǎn)
  • pivot-軸心點的坐標,默認為坐標空間的中心
  • block-lambda,用于將圖形包裹起來的lambda

上例代碼表示將圖形以中心為軸心順時針旋轉(zhuǎn)45度.


自定義繪圖區(qū)域及繪制內(nèi)邊距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()方法,它有四個參數(shù)

  • horizontal-插入左右邊界的像素數(shù)。默認為零
  • vertical-插入上邊界和下邊界的可選像素數(shù)。默認為零
  • block-lambda,用于將圖形包裹起來的lambda

上例代碼表示將圖形以canvas的寬高度的一半為區(qū)域作圖,并且horizontalpadding 50像素 verticapadding 30像素.


組合轉(zhuǎn)換 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()方法,它有四個參數(shù)

  • transformBlock-調(diào)用回調(diào)以在發(fā)布繪圖操作之前發(fā)布要進行的轉(zhuǎn)換
  • 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)}})
}

總結(jié)

本文介紹了Compose Canvas基礎中圖形轉(zhuǎn)換相關(guān)的API,包括平移、縮放、旋轉(zhuǎn)、自定義繪圖區(qū)域及內(nèi)邊距、組合轉(zhuǎn)換等內(nèi)容。通過示例代碼,演示了這些API的使用,希望對初學者有所幫助。

http://m.risenshineclean.com/news/64351.html

相關(guān)文章:

  • 免費企業(yè)靜態(tài)網(wǎng)站模板常見的關(guān)鍵詞
  • 鄭州網(wǎng)站制作多少錢百度站長資源平臺
  • 做網(wǎng)站容易嗎免費發(fā)布推廣的平臺有哪些
  • 十大手游折扣平臺app培訓推廣 seo
  • 聚化網(wǎng)網(wǎng)站網(wǎng)絡推廣渠道有哪些
  • 湖北省節(jié)能建設網(wǎng)站品牌軟文范文
  • 網(wǎng)站公安備案增加開辦主體十大營銷模式
  • 沈陽網(wǎng)站設計價格百度推廣登陸入口
  • 簡單大氣的網(wǎng)站模板友鏈網(wǎng)
  • wordpress主機空間微信搜一搜seo
  • 徐州軟件開發(fā)培訓深圳市seo上詞貴不貴
  • 織夢免費網(wǎng)站模塊下載地址公司網(wǎng)站首頁設計
  • 制作公司網(wǎng)站國際機票搜索量大漲
  • 個人網(wǎng)站發(fā)布怎么做高端網(wǎng)站定制設計
  • wordpress 首頁函數(shù)手機網(wǎng)站怎么優(yōu)化關(guān)鍵詞
  • 做算命網(wǎng)站賺錢嗎百度瀏覽器下載官方免費
  • 怎么做wap網(wǎng)站軟文標題和內(nèi)容
  • w網(wǎng)站鏈接如何做腳注深圳招聘網(wǎng)絡推廣
  • 廣東手機網(wǎng)站建設報價表廣州網(wǎng)絡營銷產(chǎn)品代理
  • seo技術(shù)分享免費咨詢北京seo優(yōu)化方案
  • 怎么看一個網(wǎng)站做得好不好百度灰色詞優(yōu)化排名
  • 教學網(wǎng)站前臺模板站長網(wǎng)站優(yōu)化公司
  • 網(wǎng)站建設123上海seo顧問推推蛙
  • 做網(wǎng)站的接私活犯法嗎百度搜索關(guān)鍵詞統(tǒng)計
  • h5響應式網(wǎng)站建設常州seo招聘
  • 一級a做爰免費網(wǎng)站抖音推廣怎么收費
  • 域名查詢站長之家如何注冊屬于自己的網(wǎng)站
  • 全國備案網(wǎng)站數(shù)量cnzz
  • 跨境商城網(wǎng)站建設頭條搜索
  • 網(wǎng)站建設風格有哪些seo搜索引擎工具