rect

多态(经典案例)

痴心易碎 提交于 2019-12-02 07:04:54
案例:打印 矩形 和 圆形 矩形: x(横坐标), y(纵坐标),length(长度), wid(宽度) 圆形: x(横坐标), y(纵坐标), r(半径) 思路: 矩形 和 圆形 都有 共同的元素:x(横坐标), y(纵坐标) 那么可以把x, y抽取出来 定义出一个 形状类作为父类,形状类中 包含这两个属性。 定义一个 矩形类,继承 形状类。在自己类中扩展 length(长度), wid(宽度)属性 定义一个 圆形类,继承 形状类。在自己类中扩展 r(半径) 属性 写一个测试类,定义相应的方法 来实现功能。 代码实现: 1.定义一个形状类: public class Shape { // 形状类 private int x; // 描述横坐标 private int y; // 描述纵坐标 public Shape() { super(); } public Shape(int x, int y) { super(); // this.x = x; // this.y = y; setX(x); // 推荐这种写法,可以对x,y值做判断。只需在对应方法中,设置判断条件即可 setY(y); } public int getX() { return x; } public void setX(int x) { this.x = x; } public int getY() {

从内存结构上看equals,==的区别

本秂侑毒 提交于 2019-12-02 06:33:21
总之,==比较的是引用类型的址或基本数据类型的值,java中的==是用来判断对象所使用的内存地址是不是同一个,进而判断是不是同一个对象。equals()是Oblect类的一个方法,如果子类重写了,比较的是值,否者它和==相同比较的是址,就是比较两个变量是否引用的是同一对象。例如String,Integer重写了equals()方法 注意到:特殊。。。如下。。引用类型String的变量,用==比较a和b是相等的,a和d是不相等的。只有new会创建一个新的对象,为其分配内存空间。 Integer int1=128;Integer int2=128; int1==int2结果是false。 Integer int1=127;Integer int2=127; int1==int2结果是true。128以内的数进行自动封箱会激发对象池操作 java数据的存储原理(栈和堆) 如int a = 3;这里的a是一个指向int类型的引用,指向3这个字面值。出于追求速度的原因,就存在于栈中,栈有一个很重要的特殊性,就是存在栈中的数据可以共享。 比如: 我们同时定义: int a=3; int b=3; 编译器先处理int a = 3;首先它会在栈中创建一个变量为a的引用,然后查找有没有字面值为3的地址,没找到,就开辟一个存放3这个字面值的地址,然后将a指向3的地址。接着处理int b = 3

svg

穿精又带淫゛_ 提交于 2019-12-02 02:43:59
什么是SVG? https://www.w3school.com.cn/svg/svg_intro.asp svg实例汇总 https://www.runoob.com/svg/svg-examples.html svg全称为Scalable Vector Graphics,是一种使用XML技术描述二维图形的语言,简单来说 - 矢量图(不失真) 在HTML5出现之后,将SVG内容直接定义在HTML页面中 SVG的优势 可以使用文本编辑器创建和修改,SVG可被搜索、索引等,SVG绘制的图像不失真的 SVG 指可伸缩矢量图形 (Scalable Vector Graphics) SVG 用来定义用于网络的基于矢量的图形 SVG 使用 XML 格式定义图形 SVG 图像在放大或改变尺寸的情况下其图形质量不会有所损失 SVG 是万维网联盟的标准 SVG 与诸如 DOM 和 XSL 之类的 W3C 标准是一个整体 与其他图像格式相比,使用 SVG 的优势在于: SVG 可被非常多的工具读取和修改(比如记事本) SVG 与 JPEG 和 GIF 图像比起来,尺寸更小,且可压缩性更强。 SVG 是可伸缩的 SVG 图像可在任何的分辨率下被高质量地打印 SVG 可在图像质量不下降的情况下被放大 SVG 图像中的文本是可选的,同时也是可搜索的(很适合制作地图) SVG 可以与 Java 技术一起运行

关于人脸检测基于摄像头的单帧图片多人脸小图保存实现

白昼怎懂夜的黑 提交于 2019-12-01 23:35:16
1.单帧多人脸multiscaleface检测人脸的流程: 申请生成新的相应大小的内存的mat数据 Rect rect(x,y,width,height); Mat image=zero(0,0,width,height); img(rect).copyTo(image); 2. 来源: CSDN 作者: sherryyang1234 链接: https://blog.csdn.net/github_38595636/article/details/88873591

unity EditorWindow拖入文件或文件夹

有些话、适合烂在心里 提交于 2019-12-01 23:27:57
将脚本放在Assets内的Editor文件夹里。 TestWindow.cs using UnityEngine; using UnityEditor; public class TestWindow:EditorWindow{ [MenuItem("Tools/TestWindow")] static void createTestWindow() { var window=EditorWindow.GetWindow<TestWindow>(false,"TestWindow"); window.minSize=new Vector2(400,400); window.Show(); } private void OnGUI() { if(Event.current.type==EventType.DragUpdated){ DragAndDrop.visualMode=DragAndDropVisualMode.Generic;//鼠标外观 }else if(Event.current.type==EventType.DragExited){ if(mouseOverWindow==this){//鼠标位于当前窗口 //Rect rect=EditorGUILayout.GetControlRect(); //rect.Contains(Event.current

12宏

放肆的年华 提交于 2019-12-01 23:21:13
1.用宏定义时,要使用完备的括号。 示例:如下定义的宏都存在一定的风险。 #define RECTANGLE_AREA( a, b ) a * b #define RECTANGLE_AREA( a, b ) (a * b) #define RECTANGLE_AREA( a, b ) (a) * (b) 正确的定义应为: #define RECTANGLE_AREA( a, b ) ((a) * (b)) 2.将宏所定义的多条表达式放在大括号里。 示例:下面的语句只有宏的第一条表达式被执行。为了说明问题,for 语句的书写稍不符规范。 #define INTI_RECT_VALUE( a, b )\ a = 0;\ b = 0; for (index = 0; index < RECT_TOTAL_NUM; index++) INTI_RECT_VALUE( rect.a, rect.b ); 正确的写法应为: #define INTI_RECT_VALUE( a, b )\ {\ a = 0;\ b = 0;\ } for (index = 0; index < RECT_TOTAL_NUM; index++) { INTI_RECT_VALUE( rect[index].a, rect[index].b ); } 3.使用宏时,不允许参数发生变化。 示例:如下用法可能导致错误

WPF数据可视化-瀑布图

半腔热情 提交于 2019-12-01 17:38:51
实现方式一: 将数据(Point[])根据索引沿X轴使用虚拟画布进行绘制,每个数据绘制大小为1px * 1px;最终绘制出的宽度等于数据的总长度。标记并存储当前绘制的图为PreviousBitmap; 继续置顶绘制第二组数据,第二组数据绘制完后,将标记的PreviousBitmap作为Image在Y轴距离顶部距离为1px的地方用DrawingContext.DrawImage()方式绘制,以此类推。核心代码如下: private void DoAddDataArray(Point[] arrPoints) { this.Dispatcher.Invoke(DispatcherPriority.Normal, new Action(() => { double dPixelWidth = Pixel; double dContainerWidth = this.VbxContainer.ActualWidth; double dContainerHeight = this.VbxContainer.ActualHeight; double dPixelHeight = Pixel/2d; double dCellHeight = 1; double dCellWidth = 1; DrawingVisual drawingVisual = new DrawingVisual();

css3画半圆的两种方法

余生颓废 提交于 2019-12-01 15:39:04
<html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <style> * {margin: 0; padding: 0;} .clearfix{zoom:1;/*为IE6,7的兼容性设置*/} .clearfix:after { content: '.'; display: block; height: 0; clear: both; visibility: hidden; } ul li { list-style: none; float: left; margin: 50px 0 50px 20px; text-align: center; } li { background: red; } h2 { margin-top: 20px; } .circle1 { width: 100px; height: 50px; border-radius: 50px 50px 0 0; line-height: 50px; } .circle2 {

Add glow to a basic Java rectangle

試著忘記壹切 提交于 2019-12-01 10:34:16
I've got a very basic rectangle drawing panel, but I would like to know if there is a simple way to add some sort of glow to the rectangles. public class Blocks extends JPanel { public void paintComponent(Graphics g) { super.paintComponent(g); this.setBackground(Color.BLACK); for (int i = 1; i <= totalSteps; i++) { g.setColor(Color.WHITE); g.fillRect(100 + i*60, 260, 50, 50); } } } MadProgrammer Generating a "glow" effect is a little bit involved, depending on what you want to achieve. I use this approach to generate glow effects for transparent/non-rectangular shapes (great for generating

c++继承与派生

我的未来我决定 提交于 2019-12-01 07:18:22
·类的继承 定义: 是新的类从已有类那里得到已有的特性,原有的类称为基类或父类。(除了构造函数,拷贝构造函数和析构函数都继承) 继承的目的: 代码设计的重用,充分利用原有的类。 语法: 一个父类时: class 派生类名(子类名):继承方式 基类名 { 派生类成员声明; }; 例: #include <iostream> using namespace std; // 基类 class Shape { public: void setWidth(int w) { width = w; } void setHeight(int h) { height = h; } protected: int width; int height; }; // 派生类 class Rectangle: public Shape { public: int getArea() { return (width * height); } }; int main(void) { Rectangle Rect; //声明一个对象 Rect.setWidth(5); //赋值 Rect.setHeight(7); // 输出对象的面积 cout << "Total area: " << Rect.getArea() << endl;  system("pause"); return 0; } 运行结果: 多继承时