引用文章

讲述MongoDB的开源许可证: [开源许可证,欢迎来到云时代]()https://3g.163.com/dy/article/HEHAH8HU0511CUMI.html)
开源软件许可证类型完整指南 2020

开源许可证分类

首先看是否是OSI(Open Source Initiative)认证的许可证, 包括: GPL MPL LGPL AGPL MIT BSD Apache. 其他, 包括SSPL(APGL + Common Clause), Elastic License V2.
在OSI之下, 分为Copyleft(著佐权)和Permissive(宽松许可证).
Copyleft会要求基于本软件的代码也要开源, Permissive则无此要求.
Copyleft包括GPL, 轻度Copyleft包括 CDDL MPL Eclipse.
Permissive包括MIT BSD Apache.

许可证排名

MIT Apache GPL

MIT

也称为X许可证或者X11许可证
MIT内容与条款3伯克利许可证(3-clause BSD license)内容颇为近似,但是赋予软件被授权人更大的权利与更少的限制。

  • 被授权人有权利使用、复制、修改、合并、出版发行、再授权及出售软件及软件的副本。
  • 被授权人可根据程序的需要修改授权条款为适当的内容。
  • 在软件和软件的所有副本中都必须包含版权声明和许可声明。
  • MIT的内容可依照程序著作权者的需求更改内容。此亦为MIT与BSD(The BSD license, 3-clause BSD license)本质上不同处。
  • MIT条款可与其他授权条款并存。另外,MIT条款也是自由软件基金会(FSF)所认可的自由软件授权条款,与GPL兼容。

Apache

Apache 许可证2.0和GNU GPL之间的区别

   GNU GPL是一个著佐权许可证。因此,使用GPL许可证组件的软件,必须发布其源代码,和所有修改及发行整个源代码的权利。Apache 许可证2.0 不强制这样的条款,不强制你发布修改过的版本。此外,你能选择使用不同的许可证发布你修改过的版本(然而,对未被修改过的代码,要求你保留Apache 许可证)。

    GPL中不包含特定的要求(这个要求指对程序做广告)。

在Apache2.0和伯克利之间的区别

   伯克利许可证是另一个高度宽松许可证,允许你修改和按照自己的意愿选择许可证,并再发行伯克利许可证下软件。早期Apache许可证和初版伯克利(后来修改版)许可证一样,但Apache2.0把二者区分开。这两者之间关键的区别:

明确授予专利权:Apache许可证2.0明确规定,当使用、修改或发行Apache许可证下的软件时,授予专利权;它也列出了撤销授予的情况。

清晰定义使用概念:Apache 2.0 清晰定义它所使用的所有的条款和概念,几乎不会引起歧义。

重复使用,不用改写:Apache2.0能很容易的被其他项目使用,无需对许可证文档本身做任何改写。

参考教程: Blender 商业广告教程 带你从头到尾的制作饮料广告

Cycles透镜研究

  • 透镜为玻璃材质, 糙度0.
  • 可以通过摄像头直接通过透镜看另一侧, 不能通过摄像头看光源通过透镜打在桌面上的光斑效果(桌面材质为原理化BSDF默认值)
    *有影响最终效果的是渲染-光程-最多反弹次数

全反射镜(直角三棱镜)成功

使用5个全反射镜看文字, 旁边有一个点光源照亮文字.最多反弹次数中至少需要如下设置:

  • 总数 15, 减1则看不到点光源的光线, 减2则黑.
  • 光泽 5. 减1则黑.
  • 透射 10, 减1则看不到点光源的光线, 减2则黑.
    其他参数可以为0

导光板 (失败)

导光板为玻璃材质.
侧发光灯珠原理化BSDF默认值, 朝向导光板一侧为发光材质, 值1000.
扩散板为半透默认材质
导光板打点采用立方体原理化BSDF默认值, 略侵入导光板.
镜头直视扩散板一侧

  • 漫射至少为1, 我设置为2
  • 透射至少为2
  • 光泽有一个较大值新效果更好, 我设置为12.
    确实可以有导光板的效果, 然而半透材质的扩散板出光量要远远多于打点的出光量, 以至于打点的出光量可以忽略不计

注意

  • 环状物不能使用两个柱体的布尔减生成, 因为柱体的上下面超过了四边形, 所以这种生成的上下面也有超过四边形的问题, 进行 倒角和细分都会有问题. 正确的做法是直接增加环, 或者使用面+螺旋修改器生成.

曲线

添加一个贝塞尔曲线以后进入编辑模式, 然后删除, 就可以用Ctrl+左键点击的方式增加点了
V 控制柄类型菜单

官方文档

  1. 搜索启用或关闭Windows功能, 启用适用于Linux的Windows子系统虚拟机平台, 确定后需要重启一次;
  2. 打开Microsoft Store, 搜索Linux并安装Winddows subsysterm for linux previewUbuntu 22.04 LTS(或者其他版本)
  3. 按提示安装完以后, 给Ubuntu换aliyun的源, 在ubuntu的bash里面安装sudo apt install x11-apps
  4. bash里试着运行xeyes &,如果打开了说明GUI安装成功.

苹果官方文档:关于基于 Intel 的 Mac 电脑上的 macOS 恢复功能中写道

USB Windows键盘 Apple键盘
Ctrl Control
Win Command ⌘
Alt Option

Apple社区问题: 如何重装Mac mini系统?中写的组合键有所不同,是Option-Command-R组合键, 也就是Alt+Win+R

在这个文章How to enter BIOS mode on Mac and what to do with it中提到, 长按Command-S开机可以进入类Unix界面解决系统问题.

选择启动盘的方法: 按住Alt开机

时尚

the black tape project 黑胶带项目,用胶带做衣服的时尚团体

医学

Gunther von Hagens 德国解剖学家,善于做动物和人体肌肉塑化

艺术

被剥皮的马西亚斯 提香作品,讲述的是太阳神阿波罗和森林之神玛西亚斯(Marsyas)的故事。Marsyas捡起了雅典娜丢弃的笛子,然后要和阿波罗比演奏技艺,赢了的人可以任意处置对方。阿波罗用七弦琴只能打个平手,然后阿波罗居然出老千赢了对方,为了给对方点儿颜色看看就把Marsyas挂在树上把皮给剥了。

ESP32C3 Blufi流程介绍
ESP32C3 AT蓝牙命令
腾讯Qcloud AT指令集0
腾讯BLUFI蓝牙辅助配网文档
ESP32 AT指令设置可发现BLE设备名 && 与手机进行ble数据透传

BLUFI联网方式(动态配网)

  1. 先应该配置三元组AT+TCDEVINFOSET=<tls_mode>,<product_id>,<device_name>,<device_secret>[,<product_region>]
  2. AT+BLUFI命令后,可以使用乐鑫官方的BLUFI APP或小程序联网
  3. 连接后再使用动态注册命令AT+TCDEVREG
  4. 使用MQTT连接命令连接即可AT+TCMQTTCONN=<tlsmode>,<cmdtimeout>,<keepalive>,<clean_session>,<reconnect>

BLUFI APP中看不到设备名字怎么办

AT+BLEINIT=2 //BLE初始化,将模块设为server端。
AT+BLENAME="AiThinker" //设置BLENEME名并用转换器获得它的16进制数。
AT+BLEADVDATA="0201060A0941695468696E6B6572" //广播设备名称
AT+BLEADVSTART //开始广播

广播包16进制格式

由多组的不定长数据组成, 每一组的格式如下

Length AD Type AD Data
广播数据长度 广播数据类型 广播数据内容

长度是AD Type + Ad Data的长度, 因为AD Type总是1, 所以长度就是len(ad_data)+1

AD类型如下

AD Type 含义 备注
0x01 广播模式
0x02 非完整的 16 bit UUID 列表
0x03 完整的 16 bit UUID 列表
0x04 非完整的 32 bit UUID 列表
0x05 完整的 32 bit UUID 列表
0x06 非完整的 128 bit UUID 列表
0x07 完整的 128 bit UUID 列表
0x08 缩写的设备名称
0x09 完整的设备名称
0x0A 广播包的信号强度
0x0B
0x0C
0x0D
0x0E
0x0F
0x10
0x11 带外安全管理
0x12 (Slave)连接间隔范围
0x13
0x14 16 bit UUID 列表
0x15 128 bit UUID 列表
0x16 16 bit UUID Service 前 2 字节是 UUID,后面是 Service 的数据
0x17 公开目标地址
0x18 随机目标地址
0x19 Appearance(外观)
0x1A
0x1B
0x1C
0x1D
0x1E
0x1F
0x20 32 bit UUID Service 前 4 字节是 UUID,后面是 Service 的数据
0x21 128 bit UUID Service 前 16 字节是 UUID,后面是 Service 的数据
~~~
0x29 PB-ADV
0x2A Mesh Message
0x2B Mesh Beacon
~~~
0xFF 厂商自定义数据

对照上文的蓝牙广播数据类型定义的描述,可知
02 01 06 字段设置广播模式
0A 09 41695468696E6B6572 字段表示:
0A: 此字段数据长度为10
09 :完整的设备名称
41695468696E6B6572:设备名称AiThinker的十六进制表示