自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (4)
  • 收藏
  • 关注

原创 深入分析用 Manimgl 绘制参数方程的图像

本文介绍 Manimgl 开发库中的 FunctionGraph 函数图形类和 ParametricCurve 参数曲线类(曾用名为:ParametricFunction,参数方程)进行图形绘制。这些图形分别对应于某个曲线的函数或参数方程。

2022-03-31 01:09:21 2895

原创 Manimgl 进阶笔记

目录一、调整视频输出的纵横比二、调整预览窗口的尺寸三、在开发工具中直接调试一、调整视频输出的纵横比调整输出视频的纵横比,在日常开发中属于比较基本的需求。要使用 Manimgl 得到期望的分辨率的视频输出需要修改以下几个地方:第一步:在 custom_config.yml 配置文件中通过 camera_qualities设置视频的输出分辨率。manimlib 框架已经在 default_config.yml 文件中设置了四种视频输出分辨率,default_qualities 参数.

2022-03-23 16:41:38 2317

原创 MacOS Big Sur 安装 Homebrew

从下面的路径下载安装命令,保存到本地:https://raw.githubusercontent.com/Homebrew/install/master/install.sh将文件中的以下内容做对应修改HOMEBREW_BREW_GIT_REMOTE="https://github.com/Homebrew/brew"改为清华大学镜像源,如下:​HOMEBREW_BREW_GIT_REMOTE="https://github.com/Homebrew/brew"HOMEBRE

2021-02-20 14:52:49 1231 1

原创 MacOS系统用brew安装PHP

一、安装Homebrew当需要在MacOS上安装各种扩展的时候,推荐使用Homebrew,Homebrew是MacOS上的命令行模式下的软件管理工具,与Fedora操作系统上的dnf命令类似。Homebrew 的安装非常简单,在安装前,需要确认XCode或者Command Line Tools for Xcode是否安装,但我并不使用Xcode这个庞然大物来编码,所以只需安装 Command ...

2019-12-12 13:23:40 1374

原创 在MacOS10.15上为Python2安装pip

安装过程很简单,两步就能处理:第一步:下载get-pip.py文件curl https://bootstrap.pypa.io/get-pip.py >> get-pip.py第二步:执行安装sudo python2 ./get-pip.py顺便安装一个PySidebrew install pyside可以用pip安装PySide,但是中间会安装编译工具,如...

2019-12-09 17:43:00 1400 1

原创 在MacOS上配置PHPStorm与xdebug

一、安装xdebug首先通过phpinfo()查看xdebug的版本,可直接复制所有phpinfo()的输出文件到xdebug官网提供的安装向导,向导会指导你如何处理!粘贴所有输出内容后,向导页面如下图,向导网址:https://xdebug.org/wizard。点击按钮Analyse my phpini() output可以看到如下两部分内容,首先是概要部分,这部分将phpini(...

2019-12-07 12:20:55 369

原创 覆盖编译MacOS10.15-1内置PHP-7.3.9

首先下载PHP-7.3.9源代码,解压保存在/usr/local/src目录。然后禁用SIP,设置根目录的写入权限,具体方法参见《MacOS10.15编译安装PHP详细手册》第三部分。若apache2没有安装或其他依赖库没有安装,也参考手册安装。以上准备工作完成后,进入PHP-7.3.9源代码目录,执行以下命令:./configure --prefix=/usr \--with-apx...

2019-12-07 10:23:10 681

原创 MacOS10.15编译安装PHP详细手册

这篇文章更多是提醒自己,同时希望对遇到类似问题的人有所帮助。文中基本上把我遇到的问题都罗列出来了,但前后次序各有不同。我是在执行phpize的时候发现的问题,所以先解决MacOS10.15的SIP和根目录写权限的问题,然后再重新编译PHP,安装apache。这篇文章没有解决编译覆盖MacOS内置PHP的问题,我应该会另外写一篇文章解专门说明如何操作。一、安装phpize的依赖库执行 php...

2019-12-07 10:17:52 1446

原创 Yii2扩展开发与代码复用:以资源包为例

Yii2是目前最流行的PHP开发框架之一,具有简洁优雅、脉络清晰、开放融合、易于扩展、开发高效等等特点。在使用Yii2 Framework开发项目的过程中,必然会遇到很多复用代码或公共代码的管理问题,例如在backend和frontend都会用到的Css样式资源、Js脚本资源、图片资源、自定义的扩展组件等等。为了便于维护这些代码的版本,且能同时在backend、frontend以及其他子系统中...

2018-10-18 16:05:50 418

翻译 HTML5 Canvas 教程:十三、鼠标检测

13.1鼠标坐标 Mouse Coordinates 为了获得相对于HTML5 Canvas的鼠标坐标,我们可以创建一个getMousePos()方法,该方法基于客户端鼠标的位置和从窗口对象的getBoundingClientRect()方法获得的画布的位置返回鼠标坐标。 <!DOCTYPE HTML><html>  <head>  ...

2018-10-18 10:59:10 1014 2

翻译 HTML5 Canvas 教程:十二、动画

十二、动画 Animation 12.1清除画布内容 Clear Canvas 为了清除HTML5画布,可以使用clearRect()方法来清除画布位图。该方法的性能比清除画布的其他技术要好得多,比如重置画布的宽度和高度,或者销毁画布元素然后重新创建它。 <!DOCTYPE HTML><html>  <head>    &lt...

2018-10-18 10:58:27 2129

翻译 HTML5 Canvas 教程:十一、图像数据与路径

十一、图像数据与路径 Image Data and URL 11.1图像数据 Image Data 为了获得画布上矩形区域的每个像素的图像数据,可以使用画布上下文的getImageData()方法获得图像数据对象,然后从data属性访问像素数据。图像数据中的每个像素包含四个分量,即红色、绿色、蓝色和alpha分量。使用图像数据对象访问像素数据有三种常用技术。 1、遍历从左上...

2018-10-18 10:57:27 1886

翻译 HTML5 Canvas 教程:十、合成

十、合成 Composites 10.1阴影 Shadows 要用HTML5画布添加阴影,可以使用画布上下文对象的shadowColor、shadowBlur、shadowOffsetX和shadowOffsetY属性。 <!DOCTYPE HTML><html>  <head>    <style>     ...

2018-10-18 10:54:49 383

翻译 HTML5 Canvas 教程:九、变换

九、变换 Transformations 译者注:变换计算中需要用到很多矩阵变换运算,如果不熟悉矩阵变换运算,那么理解以下代码会有一定困难,建议先熟悉矩阵变换运算再阅读以下内容。这里有一篇很好的文章详细解释了矩阵运算:浅谈矩阵变换——Matrix。 9.1平移 Translate 为了在HTML5画布上实现平移,可以使用上下文对象的translate()方法。平移是一种移动...

2018-10-18 10:53:58 525

翻译 HTML5 Canvas 教程:八、文字

八、文字 Text 8.1字体、尺寸、样式 Font, Size, and Style 为了使用HTML5画布绘制文本,我们可以使用画布上下文对象的font属性和fillText()方法。 要设置HTML5 Canvas文本的字体、大小和样式,可以将canvas上下文对象的font属性设置为包含字体样式、大小和字体族的字符串,以空格分隔。风格可以是normal、italic...

2018-10-18 10:52:52 1930

翻译 HTML5 Canvas 教程:七、图像

七、图像 Images 7.1绘制图像 Draw Image 为了使用HTML5画布绘制图像,可以使用drawImage()方法,该方法需要一个图像对象和一个目标点。目标点定义图像左上角相对于画布左上角的坐标值。 因为drawImage()方法需要图像对象作为参数,所以要首先创建一个图像,并在调用drawImage()方法之前将其加载。可以通过使用图像对象的onload属性...

2018-10-18 10:51:55 1362

翻译 HTML5 Canvas 教程:六、填充样式

六、填充样式 Fill Style 6.1纯色填充 Color Fill 要用纯色填充HTML5画布形状,可以将fillStyle属性设置为颜色字符串(如蓝色)、十六进制值(如0000FF)或RGB值(如rgb(0,0255),然后可以使用fill()方法来填充形状。除非另有声明,否则HTML5画布形状的默认填充样式为黑色。 注意:在为形状设置填充和笔划时,请确保在stro...

2018-10-18 10:50:48 1296

翻译 HTML5 Canvas 教程:五、形状

五、形状 Shapes 5.1自定义形状 Custom Shape 若要用HTML5画布绘制自定义形状,可以创建一个路径,然后调用closePath()方法关闭它。可以使用lineTo()、arcTo()、quadraticCurveTo()或bezierCurveTo()方法来构造构形状的每个子路径。 <!DOCTYPE HTML><html>...

2018-10-18 10:48:42 285

翻译 HTML5 Canvas 教程:四、路径

四、路径 Paths 4.1路径 Path 在HTML5画布上绘制路径,可以通过连接多个子路径(曲线)实现。每个子路径的结束点成为新的路径的上下文点。我们可以使用lineTo()、arcTo()、quadraticCurveTo()和bezierCurveTo()方法来绘制每个子路径。每次开始绘制一个新的路径时,也可以使用beginPath()方法。 <!DOCT...

2018-10-15 23:00:52 309

翻译 HTML5 Canvas 教程:三、曲线

三、曲线 Curve 3.1圆弧 Arc 通过调用上下文对象的arc()方法可以在HTML5画布上绘制圆弧。圆弧由中心点、半径、起始角、结束角和绘图方向(顺时针或逆时针)定义。同时可以用lineWidth、strokeStyle和lineCap属性定义弧线的样式。圆弧是一个假想圆周长的一部分。这个假想圆可以用x、y和半径radius来定义。 接下来,我们可以通过设置...

2018-10-15 23:00:00 535

翻译 HTML5 Canvas 教程:二、线条

二、线条Lines 2.1直线 Line 要在画布上绘制线条,可以通过调用:beginPath()、moveTo()、lineTo()和stroke()方法来实现。首先,我们可以使用beginPath()方法来声明我们即将绘制一个新的路径。接下来,我们可以使用moveTo()方法定位上下文对象的绘图起点(即绘图光标),然后使用lineTo()方法从起始位置绘制一条直线到一个新的...

2018-10-14 00:14:36 1072

翻译 HTML5 Canvas 教程:一、画布

一、HTML5画布 HTML5 Canvas 1.1画布元素Canvas Element HTML5 Canvas元素是类似于<div>、<a>或<table>标记的HTML标记,其内容可通过JavaScript渲染呈现。要使用HTML5画布,首先要在HTML文档内添加canvas标签,然后使用JavaScript访问canvas对象,并创建ca...

2018-10-14 00:12:53 1440 2

原创 一个在线音乐软件的故事(五、让我们开始写代码吧)

让我们开始写代码吧现在有了明确的功能需求,几乎克服了所有的技术障碍,那么就可以开始动手编写这个音乐播放软件了。一、组织项目结构这个故事所讲的在线音乐播放软件并没有很复杂的功能需求,界面数量很少,没有数据库操作。这样的项目几乎可以任意组织代码文件,甚至可以没有任何结构,把所有的代码都保存在同一个目录中,但我们依然希望能有一套便于组织和维护的项目结构。我们把项目划分为:项目配置、协议分

2017-08-27 10:12:01 953

原创 一个在线音乐软件的故事(四、现在就可以开始编码了吗?)

看起来一切已经就绪,我们选择了最熟悉的各种组件库,解决了音乐源的问题,似乎可以开始大刀阔斧的开工了。且慢!现在还不行,还要解决一些问题才能开工。我把这些问题称为技术障碍,必须先克服这些技术障碍,才能开始动手编码。一、如何播放音频文件?首先需要确认的是,音频播放。这里我们假设电脑上已经安装了Ffmpeg、PyAudio这两个组件库,那么问题是如何在Python中调用这些库播放音乐?我做了

2017-08-27 09:44:10 658

原创 一个在线音乐软件的故事(三、音乐从哪里来?)

音乐从哪里来?现在互联网提供开放音乐API接口的平台还是比较多的,比如:百度音乐API接口、腾讯音乐API接口、虾米音乐API接口甚至中国移动都曾经有过音乐API接口,有兴趣可以度娘一下,还有很多知名不知名的互联网平台都提供音乐API的接口。经过音乐数量、音乐品质、用户数量、开发复杂度等方面的比较,最终选择了腾讯QQ音乐作为音乐源。但是腾讯的API是在移动设备上对QQ音乐软件的调用,对于我

2017-08-27 09:28:28 1347

原创 一个在线音乐软件的故事(二、其实故事从这里才开始)

其实故事从这里才开始如果你看到了这里,那你应该看出来,我是在讲软件开发的故事,如果你和我一样喜欢Linux,喜欢用Python那我希望你也喜欢这个故事。这个故事并不是讲如何使用Python的,所以关于如何使用Python推荐你看《Python cookbook 第三版》在故事的由来中已经提到,我是在Fedora上工作的,这个软件首先必须能在Fedora上运行,其他的Linux发行版留到以后

2017-08-26 21:13:22 456

原创 一个在线音乐软件的故事(一、故事的由来)

这篇文章是讲一款在线音乐播放软件的开发过程,是我写完这个软件后的一些总结,我把它写成了一则小故事,故事把开发过程中的重点部分写了出来,有些细节的内容还是需要看源码。希望这则故事对已经有一些编程基础,想继续深入学习Python的童鞋起到抛砖引玉的作用。很久很久以前,故事的由来我算是Fedora的忠实用户,平时都是在Fedora上做所有的事情,也完全没有不方便的感觉。听音乐、写代码、网

2017-08-26 21:02:54 929

Yii2-Cookbook-Chinese.pdf

Yii2 Framework Yii2开发框架的安装、介绍;路由、控制器和视图;ActiveRecord模型、数据库;安全;RERETful web服务;扩展等。

2019-10-24

Yii2扩展开发与代码复用:以资源包为例

学习如何编写Yii2扩展,以扩展形式编写资源包,实现在不同应用和项目之间重用资源包,且降低维护成本。

2018-10-18

一个在线音乐软件的故事

这篇文章是讲一款在线音乐播放软件的开发过程,是我写完这个软件后的一些总结,我把它写成了一则小故事,故事把开发过程中的重点部分写了出来,包括用到的技术、开发库的说明,但有些细节的内容还是需要看源码。希望这则故事对已经有一些编程基础,想继续深入学习Python的童鞋起到抛砖引玉的作用。

2017-08-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除