一:所有的情人节是多少号
所有的情人节是多少号?
01月14日 日记情人节(diary day),情侣们互相赠送恋爱日记 02月14日 情人节(st valentine's day),传统情人节
03月14日 白色情人节(white day),男孩回赠礼物的日子
04月14日 黑色情人节1(black day),属于单身贵族们的情人节 05月21日 黑色情人节2
05月14日 黄色与玫瑰情人节(yellow & rose day),在这一天穿上黄色衣服,吃黄色咖喱饭是告诉大家你还在单身的意思,另外,在这一天送红玫瑰是倾诉爱意,送白玫瑰是表示犹豫未决,若送上黄玫瑰,就表示再见了
06月14日 亲吻情人节(kiss day),情侣们用亲吻表达对对方的爱意 07月14日 银色情人节(silver day),把你的意中人带回家让父母认识的好机会
08月14日 绿色情人节(green day),酷热的夏天,不妨和另一半做一趟凉爽的森林之旅
09月14日 音乐情人节与相片情人节(music & photo day),是举办大型社交活动的好日子,另外还有许多情侣在这天就蔚蓝晴朗的天空合影,所以又称为"相片情人节"
10月14日 葡萄酒情人节(wine day),当然是喝一点葡萄美酒啦
11月14日 橙色情人节与电影情人节(orange & movie day),这一天情侣们可以连赶两场电影,看完后.来杯柳橙汁吧
12月14日 拥抱情人节(hug day),在公开场合拥抱.向世人宣告你俩的爱意
还有我们中国传统七夕今年是8月2日
二:matlab绘制动态三维心形代码(蛋疼的情人节奉献)
Matlab绘制三维动态心形
It’s OK to send a pic to your girlfriend on Valentine's Day
情人节蛋疼玩意
效果图:
原始代码:
%仅供参考,自助修改,原则上自己动手,要是非常强烈的要帮忙
%可以联系我的QQ 865802870 ,但愿我还在上面.
Source code:
%构造体积方程和坐标轴,画出图形;linspace(a,b,c)均匀生成介于a到b的c个值,c的默认为100。Meshgrid生成矩阵网格。
[X,Y,Z] = meshgrid(linspace(-3,3,101));
%3D心型图方程如下;
F = -X.^2.*Z.^3-(9/80).*Y.^2.*Z.^3+(X.^2+(9/4).*Y.^2+Z.^2-1).^3;
hFigure = figure;
sz = get(hFigure, 'Position');
set(hFigure, 'Position', [sz(1)-0.15*sz(3) sz(2) 1.3*sz(3) sz(4)]);
set(hFigure,'color','w', 'menu','none')
hAxes = axes('Parent',hFigure,'NextPlot','add',...
'DataAspectRatio',[1 1 1],...
'XLim',[30 120],'YLim',[35 65],'ZLim',[30 75]);
view([-39 30]);
axis off
% 制作出动态的隐形效果;
hidden on
% 画出网格,制作网格动态效果;
% 快渲染心得背面:
p = patch(isosurface(F,-0.001));
set(p,'FaceColor','w','EdgeColor','w');
% 构造Y-Z平面,,描完函数在该平面的点:
for iX = [35 38 41 45 48 51 54 57 61 64 67]
plane = reshape(F(:,iX,:),101,101);
cData = contourc(plane,[0 0]);
xData = iX.*ones(1,cData(2,1));
plot3(hAxes,xData,cData(2,2:end),cData(1,2:end),'r');
pause(.1), drawnow
end
% 构造X-Z平面,描完函数在该平面的点:
for iY = [41 44 47 51 55 58 61]
plane = reshape(F(iY,:,:),101,101);
cData = contourc(plane,[0 0]);
yData = iY.*ones(1,cData(2,1));
plot3(hAxes,cData(2,2:end),yData,cData(1,2:end),'r');
pause(.1), drawnow
end
% 构造X-Y平面,描完函数在该平面的点:
for iZ = [36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 69 71]
plane = F(:,:,iZ);
cData = contourc(plane,[0 0]);
startIndex = 1;
if size(cData,2) > (cData(2,1)+1)
startIndex = cData(2,1)+2;
zData = iZ.*ones(1,cData(2,1));
plot3(hAxes,cData(1,2:(startIndex-1)),...
cData(2,2:(startIndex-1)),zData,'r');
end
zData = iZ.*ones(1,cData(2,startIndex));
plot3(hAxes,cData(1,(startIndex+1):end),...
cData(2,(startIndex+1):end),zData,'r');
pause(.1), drawnow
end
%给三维心着色
set(p,'FaceColor','r','EdgeColor','w');
pause(.2);
set(p,'FaceColor','w','EdgeColor','r');
%函数已经画完,接下来为文字部分;
pause(.2)
%设置字体大小,粗细,位置等,以下是打出I (心型图) Wendy;
text(7,50,70,'I', 'fontWeight','bold','FontAngle','italic','FontName','Trebuchet MS','fontsize',60,'Color','r')
pause(.5)
text(80,50,43,'Math', 'fontWeight','bold','FontAngle','italic','FontName','Trebuchet MS','fontsize',60,'Color','r')
pause(.2)
line([20 80],[50 50],[52.5 52.5], 'color','r')
line([50 50],[20 80],[52.5 52.5], 'color','r')
line([50 50],[50 50],[30 80], 'color','r')
%制作者签名;
text(40,60,30,'Made By William 8/8/2012', 'fontsize',8)
text(35,45,30,'', 'fontsize',8)
%制作心的动态效果
% for i =1:28
% set(p,'FaceColor','r','EdgeColor','w');
% pause(.1);
% set(p,'FaceColor','r','EdgeColor','r');
% pause(.2)
% end
% refer to /retype/zoom/661d6b0210a6f524cdbf8514?pn=4&x=0&y=0&raww=647&rawh=50&o=jpg_6_0_______&type=pic&aimh=37.09428129829985&md5sum=f8c021b762b47caf96372f2b5c015d01&sign=df04489eeb&zoom=&png=16112-17537&jpg=1232-6256" target="_blank">点此查看
? %简单心;
figure(2) ezplot(vectorize('17*x^2-16*abs(x)*y+17*y^2-225'));
?
?
?
?
?
?
? %完美心; figure(1) N=200; f1=@(x,y,z)(x.^2+(9/4)*y.^2+z.^2-1).^3-x.^2.*z.^3-(11/80)*y.^2.*z.^3; [X,Y,Z]=meshgrid(linspace(-1.5,1.5,N)); set(patch(isosurface(X,Y,Z,f1(X,Y,Z),0)),'facecolor','r','edgecolor','none'); light
?? view(-10,24)
?? %心痕;
?? [x,y,z]=meshgrid(linspace(-1.3,1.3));
?? val=(x.^2 + (9/4)*y.^2 + z.^2 - 1).^3 - x.^2.*z.^3 - (1/9)*y.^2.*z.^3; %画出等值面
?? isosurface(x,y,z,val,0);
% View 视角 colormap 色图 0-1
?? axis equal;view(-10,10);colormap([1 0.2 0.2])
?? %花心;
?? clear;clc;close all
?? c=5;
?? t=linspace(-c,c);
?? [x,y]=meshgrid(t);
?? z=17*x.^2-16*abs(x).*y+17*y.^2-225; ?? pcolor(x,y,z);
?? shading interp
?? pause(2);
?? spinmap(10)
?? %构造体积方程和坐标轴,画出图形; ?? [X,Y,Z] = meshgrid(linspace(-3,3,101)); ??
?? %3D心型图方程如下;
?? F = -X.^2.*Z.^3-(9/80).*Y.^2.*Z.^3+(X.^2+(9/4).*Y.^2+Z.^2-1).^3;
三: 3D玫瑰javascript的代码实现及使用方法
终于给弄出来了,附上代码:
使用方法是:新建一个.txt的文本文档,将如下的代码复制进去。然后将txt文档后缀名改为html,保存用谷歌、火狐、IE、遨游、360等浏览器打开即可。
var canvas = document.getElementsByTagName('canvas')[0];
var context = canvas.getContext('2d');
var a = context;
var b = document.body;
var c = canvas;
document.body.clientWidth;
var zBuffer = [];
var SIZE = 777;
canvas.width = canvas.height = SIZE;
var h = -350;
function surface(a, b, c) {
if (c > 60) {
return {
x : Math.sin(a * 7) * (13 + 5 / (.2 + Math.pow(b * 4, 4)))
- Math.sin(b) * 50,
y : b * SIZE + 50,
z : 625 + Math.cos(a * 7)
* (13 + 5 / (.2 + Math.pow(b * 4, 4))) + b * 400,
r : a * 1 - b / 2,
g : a
};
}
var A = a * 2 - 1;
var B = b * 2 - 1;
if (A * A + B * B < 1) {
if (c > 37) {
var j = c & 1;
var n = j ? 6 : 4;
var o = .5 / (a + .01) + Math.cos(b * 125) * 3 - a * 300; var w = b * h;
return {
x : o * Math.cos(n) + w * Math.sin(n) + j * 610 - 390, y : o * Math.sin(n) - w * Math.cos(n) + 550 - j * 350, z : 1180 + Math.cos(B + A) * 99 - j * 300,
r : .4
- a
* .1
+ Math.pow(1 - B * B, -h * 6)
* .15
- a
* b
* .4
+ Math.cos(a + b)
/ 5
+ Math.pow(Math.cos((o * (a + 1) + (B > 0 ? w
: -w)) / 25), 30) * .1 * (1 - B * B),
g : o / 1e3 + .7 - o * w * 3e-6
};
}
if (c > 32) {
c = c * 1.16 - .15;
var o = a * 45 - 20;
var w = b * b * h;
var z = o * Math.sin(c) + w * Math.cos(c) + 620;
return {
x : o * Math.cos(c) - w * Math.sin(c),
y : 28 + Math.cos(B * .5) * 99 - b * b * b * 60 - z / 2 - h,
z : z,
r : (b * b * .3 + Math.pow((1 - (A * A)), 7) * .15 + .3) * b,
g : b * .7
};
}
var o = A * (2 - b) * (80 - c * 2);
var w = 99 - Math.cos(A) * 120 - Math.cos(b) * (-h - c * 4.9) + Math.cos(Math.pow(1 - b, 7)) * 50 + c * 2;
var z = o * Math.sin(c) + w * Math.cos(c) + 700;
return {
x : o * Math.cos(c) - w * Math.sin(c),
y : B * 99 - Math.cos(Math.pow(b, 7)) * 50 - c / 3 - z / 1.35 + 450,
z : z,
r : (1 - b / 1.2) * .9 + a * .1,
g : Math.pow((1 - b), 20) / 4 + .05
};
}
}
setInterval(function() {
for ( var i = 0; i < 10000; i++) {
var part = i % 46;
var c = part / .74;
var point = surface(Math.random(), Math.random(), c); if (point) {
var z = point.z;
var x = parseInt(point.x * SIZE / z - h);
var y = parseInt(point.y * SIZE / z - h);
var zBufferIndex = y * SIZE + x;
if ((typeof zBuffer[zBufferIndex] === "undefined") || (zBuffer[zBufferIndex] > z)) {
zBuffer[zBufferIndex] = z;
var r = -parseInt(point.r * h);
var g = -parseInt(point.g * h);
var b = -parseInt(point.r * point.r * -80);
context.fillStyle = "rgb(" + r + "," + g + "," + b + ")";
context.fillRect(x, y, 1, 1);
}
}
}
}, 0);