Aspect Ratio

【Flutter实战】定位装饰权重组件及柱状图案例

淺唱寂寞╮ 提交于 2020-08-07 04:25:35
老孟导读:Flutter中有这么一类组件,用于定位、装饰、控制子组件,比如 Container (定位、装饰)、 Expanded (扩展)、 SizedBox (固定尺寸)、 AspectRatio (宽高比)、 FractionallySizedBox (占父组件比例)。这些组件的使用频率非常高,下面一一介绍,最后给出项目中实际案例熟悉其用法。 【Flutter实战】系列文章地址: http://laomengit.com/guide/introduction/mobile_system.html Container Container 是最常用的组件之一,它是单容器类组件,即仅能包含一个子组件,用于装饰和定位子组件,例如设置背景颜色、形状等。 最简单的用法如下: Container( child: Text('老孟'), ) 子组件不会发生任何外观上的变化: 设置背景颜色: Container( color: Colors.blue, child: Text('老孟'), ) 设置内边距( padding ) 和 外边距( margin ) Container( color: Colors.blue, child: Container( margin: EdgeInsets.all(10), padding: EdgeInsets.all(20), color: Colors

MFC下OpenGL绘图框架

北城以北 提交于 2020-08-06 19:47:48
MFC 下 OpenGL 入门 源文件 1, 建一工程文件,我这里命名为 first ,现在 first 工程里面我们没有添加任何东西,所有的东西都是 MFC 自动帮我们创建的。 2, 添加链接库。这一步很关键。打开菜单栏下的项目 -> 属性 -> 配置属性 -> 链接器 -> 输入 -> 附加依赖项里加入 OpenGL32.lib GLu32.lib GLaux.lib ,如图 3, 加头文件,在 stdafx 里面添加 opengl 的头文件。如下代码所示: 代码 // -----------------------Tramp---添加OpenGL库头文件-----------------------------> #include " stdio.h " #include " math.h " #include " gl\gl.h " #include " gl\glu.h " #include " gl\glaux.h " // ---------------------------------------------------------------------------< 4, CCY457OpenGLView 类的属性栏,为下述消息加入消息处理函数: WM_CREATE (for OnCreate), WM_DESTROY (for OnDestroy), WM

OpenCV&Qt学习之四——OpenCV 实现人脸检测与相关知识整理

情到浓时终转凉″ 提交于 2020-05-02 17:58:51
开发配置 OpenCV的例程中已经带有了人脸检测的例程,位置在:OpenCV\samples\facedetect.cpp文件,OpenCV的安装与这个例子的测试可以参考我之前的博文 Linux 下编译安装OpenCV 。 网上能够找到关于OpenCV人脸检测的例子也比较多,大多也都是基于这个例程来更改,只是多数使用的是OpenCV 1.0的版本,而OpenCV2.0以后由于模块结构的更改,很多人并没有将例程运行起来。如果是新版的OpenCV跑旧的例程,编译运行出错的话,需要确保: #include "opencv2/objdetect/objdetect.hpp" 头文件被引用,老的头文件包含可能会提示找不到定义 libopencv_objdetect243.dll.a 库需要加入链接 之前找了几个例程,不尽如人意,于是决定还是改自带的例程更靠谱,更多的信息,已经在程序中添加注释,参见程序吧。 pro文件的工程配置,具体路径按照安装路径更改,Linux下也一样。 人脸检测基础知识整理 下面整理下人脸检测的相关知识。 人脸检测从整体来看分为四个部分: 1、Face detection 人脸识别,即识别出这是人的脸,而不管他是谁的。 2、Face preprocessing 面部预处理,即提取出脸部图像。 3、Collect and learn faces 脸部的特征采集和学习 4

【GAMES101-现代计算机图形学课程笔记】Lecture 05 Rasterization 1 (Triangles)

别说谁变了你拦得住时间么 提交于 2020-04-27 16:14:44
上一节介绍了如下内容: Viewing (观测) transformation View (视图) / Camera transformation Projection (投影) transformation Orthographic (正交) projection 平移到原点 缩放成 \([-1,1]^3\) 的立方体 Perspective (透视) projection 将frustum挤压成长方体 运用正交投影得到 \([-1,1]^3\) 的立方体 具体来说上一节其实就是介绍了如何把3D空间物体变换为一个大小 \([-1,1]^3\) 的立方体内,那么下一步所要做的事情( 把立方体画在屏幕上,即光栅化 )就是这一节所要介绍的。 1. Perspective Projection 下图灰色平面表示近平面,可由四个变量表示 \((l,r,b,t)\) ,另外假设近平面是对称的,即 \(l=-r,b=-t\) 。下面引出如下几个定义: Aspect ratio = width / height width和height指的是近平面的宽、高 Aspect ratio即为宽高比,比如手机的 4:3或者 16:9的比例 Vertical Field of View (fovY): 垂直可视角度 。即下图中两条红线之间的角度。 下面给出了垂直可视角度的侧面可视图(只画出了上半部分):

Vue中nextTick()解析

人走茶凉 提交于 2020-04-24 23:38:31
最近,在开发的时候遇到一个问题,让我对vue中nextTick()的用法加深了了解~ 下面是在组件中引用的一个拖拽的组件: <vue-draggable- resizable class ="drag-img" :w ="coordinate[0].width" :h ="coordinate[0].height" :x ="coordinate[0].abs" :y ="coordinate[0].ord" @dragging ="onDragAvator" @resizing ="onResizeAvator" @dragstop ="onDragstopAvator" @onDragStart ="onDragStartAvator" :min -width="50" :min -height="50" :handles ="['tl','tr','br','bl']" :lock -aspect-ratio="true" :parent ="true"> <img @click="setAvatorDafault" src="@/assets/img/icon_touxiang@2x.png" alt=""> </vue-draggable-resizable> 这个拖拽组件的横坐标和纵坐标、宽高是由data的一个数据控制的: data() { return {

相机标定问题-实践操作流程

孤者浪人 提交于 2020-04-22 11:51:28
接上一篇 文章 讲解的相机标定的基本概念,这篇文章主要阐述一下如何使用Matlab或者Opencv等软件得的Camera内参之后,如何保存调用内参完成对应Camera的标定流程。 一、Matlab标定鱼眼镜头实践 1. 这里我使用的Camera是Jetson Nano专用的鱼眼摄像机,具体参数如下所示: 我使用的畸变较大的鱼眼镜头。 由于我采用的是红外夜视的Camera,结果在光线稍微不好的时候就会出现图片偏红色的情况(解决方案: 微雪Camera-wiki ) 如果大家没有必要的夜视应用场景,建议不要使用红外夜视的摄像头,如果在后期处理的过程中还要对畸变图像矫正,建议就不要使用广角鱼眼摄像头了,因为矫正之后的视野区域也会有所减少,这一点可以在后面矫正的程序中看到(在畸变矫正的过程中,也需要消耗部分CPU资源,这样对于嵌入式板卡来说也许就不划算了) 2. 基于JetsonNano板卡,读取CSI摄像头的Demo程序如下: 1 import cv2 2 import sys 3 import glob 4 import time 5 import threading 6 import numpy as np 7 8 if len(sys.argv) == 1 : 9 print ' Please Choose the CSI-Camera id for image sample

IT兄弟连 HTML5教程 Media Queries的使用方法

大城市里の小女人 提交于 2019-12-19 08:48:02
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 在上例中,我们使用Media Queries模块来根据3种不同尺寸的窗口使用3种不同的样式。通过不同的媒体类型和条件定义样式表规则,媒体查询让CSS可以更精确地作用于不同的媒体类型和同一媒体的不同条件。媒体查询的大部分媒体特性都接受min和max用于表达“大于或等于”和“小与或等于”。例如,width会有min-width和max-width媒体查询可以被用在CSS中的@media和@import规则上,也可以被用在HTML和XML中。通过这个标签属性,我们可以很方便地在不同的设备下实现丰富的界面,特别是在移动设备上,媒体查询将会运用得更加广泛。媒体查询能够获取的值如下: Ø 设备的宽和高(device-width,device-heigth),主要是显示屏幕或触觉设备。 Ø 渲染窗口的宽和高(width,heigth),主要是显示屏幕或触觉设备。 Ø 获取设备的手持方向,例如是横向还是竖向“orientation(portrait|lanscape)”,以及打印机设备等。 Ø 获取画面比例(aspect-ratio),包括点阵打印机等。 Ø 获取设备比例(device-aspect-ratio),包括点阵打印机等。 Ø 获取对象颜色或颜色列表(color,color-index),也包括显示屏幕。 Ø