rect

Android深入浅出之Surface[1]

混江龙づ霸主 提交于 2019-11-27 08:33:59
Android深入浅出之Surface 一 目的 本节的目的就是为了讲清楚Android中的Surface系统,大家耳熟能详的SurfaceFlinger到底是个什么东西,它的工作流程又是怎样的。当然,鉴于SurfaceFlinger的复杂性,我们依然将采用情景分析的办法,找到合适的切入点。 一个Activity是怎么在屏幕上显示出来的呢?我将首先把这个说清楚。 接着我们把其中的关键调用抽象在Native层,以这些函数调用为切入点来研究SurfaceFlinger。好了,开始我们的征途吧。 二 Activity是如何显示的 最初的想法就是,Activity获得一块显存,然后在上面绘图,最后交给设备去显示。这个道理是没错,但是Android的SurfaceFlinger是在System Server进程中创建的,Activity一般另有线程,这之间是如何...如何挂上关系的呢?我可以先提前告诉大家,这个过程还比较复杂。呵呵。 好吧,我们从Activity最初的启动开始。代码在 framework/base/core/java/android/app/ActivityThread.java中,这里有个函数叫handleLaunchActivity [---->ActivityThread:: handleLaunchActivity()] private final void

MFC单文档视图中嵌入GLFW窗口

我与影子孤独终老i 提交于 2019-11-27 08:08:21
开始学习OpenGL由于有一段时间,但是glfw只有窗口区,虽然通过 某种手段(移步这里) 可以加入工具栏,但仍然无法作为一个标准的GUI,而直接在MFC或Qt里面使用OpenGL API感觉有诸多制肘,各有利弊,所以打算将其嵌入GUI框架,此处以MFC为例 参考博文: https://blog.csdn.net/sunbibei/article/details/51783783 1、准备工作 由于要通过CreateProcess创建子进程的方式调用第三方exe程序,所以有必要知道创建的子进程信息,此处exe来自GLFW示例程序 1.1、查看打开窗口程序进程PID windows任务管理器 -> 进程 -> 查看 -> 选择列 -> 进程勾选PID选项 如图,同一个exe窗口程序多次重复打开之后其PID是唯一的,其他信息(名称)相同,所以首先拿到以CreateProcess方法创建子进程时的进程PID 2、对CreateProcess函数进行封装 /* * 创建子进程 * @program 被调用进程的路径 * @args 需传入的参数列表 */ HANDLE StartNewProcess(LPCTSTR program, LPCTSTR args) { HANDLE hProcess = NULL; PROCESS_INFORMATION pi; STARTUPINFO si;

人脸检测学习

点点圈 提交于 2019-11-27 03:55:20
由于本人深度学习环境安装在windows上,因此下面是在windows系统上实现的。 注:参照唐宇迪视频教程。仅供自己学习记录。 使用caffe训练模型,首先需要准备数据。 正样本:对于人脸检测项目,正样本就是人脸的图片。制作正样本需要将人脸从图片中裁剪出来(数据源已经标注出人脸在图片中的坐标)。裁剪完成之后,需要check一下数据是否制作的没问题。 负样本:随机进行裁剪,使用IOU确定是正样本还是负样本。比如:IOU<0.3为负样本,最好是拿没有人脸的图片。 1、caffe数据源准备: caffe支持LMDB数据,在训练模型时首先需要将训练集、验证集转换成LMDB数据。 首先需要准备两个txt文件:train.txt和test.txt。格式如下: /path/to/folder/image_x.jpg 0 (即图片样本所在的路径和标签。文本后面的标签,对于二分类时,为0和1。本例中,0表示人脸数据,1表示非人脸数据。) 可以使用脚本来获取txt文档。简单写个脚本(获取train.txt)如下: (txt文档中应该只需要相对路径,如train.txt的格式如下:xxxx.jpg label ,下面的代码有点问题) —— 2019年7月28日更新 import os full_train_path = r"C:\Users\Administrator\Desktop

使用pygame库实现小球的运动

谁都会走 提交于 2019-11-27 03:53:17
今天偶然发现Python还能开放小游戏,自己试着了解了下pygame库,做了一个简单的小球运动的游戏。 其中用到了image.load方法加载图片生成Surface对象time.Clock控制小球的运动频率,transform.scale设置小球的大小, ballrect.move控制小球移动,screen.blit刷新屏幕。使用键盘上下,左右来控制木板来接小球。 具体代码如下: import pygame import sys import time pygame.init() size = width,height = 800,600 screen = pygame.display.set_mode(size) color = 255,255,255 ball = pygame.image.load('ball.png') ball = pygame.transform.scale(ball, (50, 50)) ballrect = ball.get_rect() rect = pygame.image.load('rect.png') rect = pygame.transform.scale(rect, (200, 30)) rectarea = rect.get_rect() rectarea.move_ip(400-100,600-35) speed =[5,5]

SVG: text inside rect

邮差的信 提交于 2019-11-26 21:52:53
I want to display some text inside SVG rect . Is it possible? I tried <svg xmlns="http://www.w3.org/2000/svg"> <g> <rect x="0" y="0" width="100" height="100" fill="red"> <text x="0" y="10" font-family="Verdana" font-size="55" fill="blue"> Hello </text> </rect> </g> </svg> But it does not work. KeatsKelleher This is not possible. If you want to display text inside a rect element you should put them both in a group with the text element coming after the rect element ( so it appears on top ). <svg xmlns="http://www.w3.org/2000/svg"> <g> <rect x="0" y="0" width="100" height="100" fill="red"></rect

元件製作之四(外觀設計)

我们两清 提交于 2019-11-26 21:46:51
時常想,如果一個元件能夠按自己想要的外觀顯示,那該是件多麼COOL的事啊,這一篇就要來做一個精美外觀的元件,但是,做什麼好呢.Button? < SPAN>高手突破>有關於自己定義外觀的Button,以及CheckBox等的做法,Button從CustomPanel繼承,重載 Paint方法來畫外觀.如果你有興趣,可以去找來看,這裏就不做Button了,做一個Memo如何呢.?是個不錯的主意。 我們先起個名字叫做TCoolMemo。以上篇已經講了很多組件的技術,這裏就只說出幾個重點。其餘不多說了。 首先,該Memo從CustomMemo繼承,它有這樣外觀:屬於平面的,邊框是可以設置顏色的線,對應的顏色變數為FEdgeColor,另外,離邊框 以內的兩個象素處,還有另一個框,當滑鼠進入Memo時,這個框會顯示,當滑鼠離開時,為個框消失,同樣也可以設置顏色,對應變數為 FEnterColor。 那麼滑鼠進入和離開怎麼判斷呢,這裏Memo將截獲兩個Delphi的內部消息: //下面兩個獲得Delphi的內部消息,滑鼠進入和離開時發生 procedure CMMouseEnter (var Message: TMessage); message CM_MOUSEENTER; procedure CMMouseLeave (var Message: TMessage); message CM

Learning Cocos2d-x for XNA(9)——碰撞检测

邮差的信 提交于 2019-11-26 21:45:57
游戏中碰撞的检测相当重要,任何两个sprite间都避免不了有交集,碰撞检测也体现了游戏的真实性。 矩形检测 矩形检测是一种实现方式比较简单的检测方式,简单就意味着不那么真实。原理就是将sprite纹理抽象出一个Rect,然后通过判断Rect间是否相交,以此作为sprite的碰撞检测。这种碰撞检测是不精确的,当然,如果游戏要求不高,还是可以的。 可见,构建矩形框Rect(黑色)后,判断Rect相交即可实现碰撞检测,但无论矩形如何设置,难免会有“盲点”使得检测不那么精确(第3种情况)。 CCRect.CCRectIntersetsRect Cocos2d-x提供了方法判断Rect是否相交的方法。 游戏规则 为了讲解碰撞检测,简单地设计一个游戏,游戏的规则是:玩家通过触碰屏幕操作Wolf的移动,Gold与Bomb随机从屏幕上端往下移动。Wolf与Gold碰撞得分,Wolf与Bomb碰撞扣分。很简单检测碰撞的游戏。 前提 还是老样子,添加游戏关键两层(Scene和Layer)GameScene、GameLayer。 GameScene 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using cocos2d; 6 7 namespace

win32 api绘制图片背景

让人想犯罪 __ 提交于 2019-11-26 19:49:42
一. bmp静态框控件 static HBITMAP g_bg_bmp; //获取窗口大小 GetWindowRect(hWnd,&rect); nWinX = rect.right - rect.left; nWinY = rect.bottom - rect.top; g_bg_bmp = LoadBitmap(hInst, (LPCTSTR)IDB_BITMAP1); //图片静态框 CreateWindowEx(0, "static", "静态框bmp", WS_CHILD|WS_VISIBLE|SS_SUNKEN, 0, 0, nWinX, nWinY, hWnd, (HMENU)ID_USR_BMP, hInst, NULL); //设置SS_BITMAP风格 HWND hWndBmp = GetDlgItem(hWnd, ID_USR_BMP); LONG nStyle = GetWindowLong(hWndBmp, GWL_STYLE); SetWindowLong(hWndBmp, GWL_STYLE, nStyle|SS_BITMAP); //设置图片 SendDlgItemMessage(hWnd, ID_USR_BMP, STM_SETIMAGE, IMAGE_BITMAP, (long)g_bg_bmp); 二. 在WM_PAINT消息中填充图片背景

How to check intersection between 2 rotated rectangles?

一笑奈何 提交于 2019-11-26 18:46:16
Can someone explain how to check if one rotated rectangle intersect other rectangle ? For each edge in both polygons, check if it can be used as a separating line. If so, you are done: No intersection. If no separation line was found, you have an intersection. /// Checks if the two polygons are intersecting. bool IsPolygonsIntersecting(Polygon a, Polygon b) { foreach (var polygon in new[] { a, b }) { for (int i1 = 0; i1 < polygon.Points.Count; i1++) { int i2 = (i1 + 1) % polygon.Points.Count; var p1 = polygon.Points[i1]; var p2 = polygon.Points[i2]; var normal = new Point(p2.Y - p1.Y, p1.X -

(转)常用的js代码

廉价感情. 提交于 2019-11-26 15:42:24
1.文本框焦点问题 onBlur:当失去输入焦点后产生该事件 onFocus:当输入获得焦点后,产生该文件 Onchange:当文字值改变时,产生该事件 Onselect:当文字加亮后,产生该文件 <input type="text" value="郭强" οnfοcus="if(value=='郭强') {value=''}" οnblur="if (value=='') {value='郭强'}">点击时文字消失,失去焦点时文字再出现 2.网页按钮的特殊颜色 <input type=button name="Submit1" value="郭强" size=10 class=s02 style="background-color:rgb(235,207,22)"> 3.鼠标移入移出时颜色变化 <input type="submit" value="找吧" name="B1" onMouseOut=this.style.color="blue" onMouseOver=this.style.color="red" class="button"> 4.平面按钮 <input type=submit value=订阅 style="border:1px solid :#666666; height:17px; width:25pt; font-size:9pt; BACKGROUND