Trang chủ
>
day-deo >
day-deo PEAK-DESIGN
Dây đeo tay Peak Design Cuff - CF-AS-3 (Sage Green) | Nhập khẩu
MỚI 100%
Đơn giá:
875,000đ
Giảm: 0đ
875,000đ
Hotline đặt hàng:
0937148222
(08:00-20:00)
KHUYẾN MÃI ÁP DỤNG TỪ
đến
Thông số nổi bật
Dây đeo tay Peak Design Cuff - CF-AS-3 là phụ kiện hỗ trợ việc quay, chụp với chiếc máy ảnh trở nên thoải mái và chắc chắn hơn. Bằng cách đeo dây đeo vào cổ tay, người dùng có thể yên tâm sáng tạo ra những khung hình ấn tượng mà không lo rơi, tuột máy ảnh khỏi tay.
Tổng quan
Sản Phẩm khác
Sản Phẩm cũ
Tính Năng
Sản phẩm bao gồm
Thông số
Dây đeo tay Peak Design Clutch - CL-3
Đơn giá
1,250,000đ
Dây đeo tay Peak Design Cuff - CF-AS-3 (Ash) | Nhập khẩu
Đơn giá
840,000đ
Dây đeo tay Peak Design Cuff - CF-BL-3 (Black) | Nhập khẩu
Đơn giá
840,000đ
Dây đeo Peak Design Leash - L-AS-3 (Ash) | Nhập khẩu
Đơn giá
1,850,000đ
Dây đeo Peak Design Leash L-BL-3 (Black) | Nhập khẩu
Đơn giá
1,850,000đ
Dây đeo Peak Design Slide Lite - SLL-BK-3 (Black) | Nhập khẩu
Đơn giá
1,850,000đ
Dây đeo Peak Design Slide Lite - SLL-AS-3 (Ash) | Nhập khẩu
Đơn giá
1,850,000đ
Dây đeo Peak Design Slide - SL-AS-3 (Ash) | Nhập khẩu
Đơn giá
1,850,000đ
Dây đeo Peak Design Slide - SL-BK-3 (Black) | Nhập khẩu
Đơn giá
1,850,000đ
Dây đeo Artisan & Artist ACAM-102 (Black)
HÀNG MỚI ĐÃ TẠM HẾT
Dây đeo tay Peak Design Cuff - CF-AS-3 (Midnight Blue) | Nhập khẩu
Đơn giá
875,000đ
Dây Đeo Nikon (Màu ngẫu nhiên) | Khuyến Mãi
HÀNG MỚI ĐÃ TẠM HẾT
Dây đeo Cam-In 1300 (Nâu đậm)
HÀNG MỚI ĐÃ TẠM HẾT
Dây đeo Artisan & Artist ACAM-120
HÀNG MỚI ĐÃ TẠM HẾT
Dây đeo Artisan & Artist ACAM-103N (Black)
HÀNG MỚI ĐÃ TẠM HẾT
Dây đeo tay Peak Design Cuff - CF-AS-3 là phụ kiện hỗ trợ việc quay, chụp với chiếc máy ảnh trở nên thoải mái và chắc chắn hơn. Bằng cách đeo dây đeo vào cổ tay, người dùng có thể yên tâm sáng tạo ra những khung hình ấn tượng mà không lo rơi, tuột máy ảnh khỏi tay.
Dây đeo cổ tay Peak Design Cuff Hai đầu nối neo Một túi đựng
Tags
×
1 / 5
(function () {
const requestAnimFrame = (function () {
return window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
function (callback) {
window.setTimeout(callback, 1000 / 60);
};
})();
const hieuUngPhaoHoa = {
canvas: document.getElementById('hieuUngPhaoHoa__canvas'),
ctx: null,
cw: window.innerWidth,
ch: window.innerHeight,
fireworks: [],
particles: [],
colors: [0, 60, 300], // Mảng các màu
hue: 0,
timerTotal: 30, // Giảm thời gian giữa các lần bắn
timerTick: 0,
isActive: true, // Biến để kiểm soát trạng thái hoạt động
init: function () {
this.ctx = this.canvas.getContext('2d');
this.canvas.width = this.cw;
this.canvas.height = this.ch;
this.loop();
// Tự động dừng sau 5 giây
setTimeout(() => {
this.isActive = false;
}, 5000);
},
calculateDistance: function (p1x, p1y, p2x, p2y) {
const xDistance = p1x - p2x;
const yDistance = p1y - p2y;
return Math.sqrt(Math.pow(xDistance, 2) + Math.pow(yDistance, 2));
},
random: function (min, max) {
return Math.random() * (max - min) + min;
},
createParticles: function (x, y) {
let particleCount = 30;
// Chọn màu ngẫu nhiên từ mảng
this.hue = this.colors[Math.floor(Math.random() * this.colors.length)];
while (particleCount--) {
this.particles.push(new Particle(x, y, this));
}
},
// Main loop
loop: function () {
if (!this.isActive && this.fireworks.length === 0 && this.particles.length === 0) {
return; // Dừng animation khi hết pháo hoa
}
requestAnimFrame(this.loop.bind(this));
this.hue += 0.5;
this.ctx.globalCompositeOperation = 'destination-out';
this.ctx.fillStyle = 'rgba(0, 0, 0, 0.5)';
this.ctx.fillRect(0, 0, this.cw, this.ch);
this.ctx.globalCompositeOperation = 'lighter';
let i = this.fireworks.length;
while (i--) {
this.fireworks[i].draw();
this.fireworks[i].update(i);
}
i = this.particles.length;
while (i--) {
this.particles[i].draw();
this.particles[i].update(i);
}
// Tự động bắn pháo hoa nếu đang hoạt động
if (this.isActive && this.timerTick >= this.timerTotal) {
this.fireworks.push(new Firework(
this.cw / 2, this.ch,
this.random(0, this.cw),
this.random(0, this.ch / 2),
this
));
this.timerTick = 0;
} else {
this.timerTick++;
}
}
};
// Firework class
class Firework {
constructor(sx, sy, tx, ty, main) {
this.main = main;
this.x = sx;
this.y = sy;
this.sx = sx;
this.sy = sy;
this.tx = tx;
this.ty = ty;
this.distanceToTarget = main.calculateDistance(sx, sy, tx, ty);
this.distanceTraveled = 0;
this.coordinates = [];
this.coordinateCount = 3;
while (this.coordinateCount--) {
this.coordinates.push([this.x, this.y]);
}
this.angle = Math.atan2(ty - sy, tx - sx);
this.speed = 2;
this.acceleration = 1.05;
this.brightness = main.random(50, 70);
this.targetRadius = 1;
}
update(index) {
this.coordinates.pop();
this.coordinates.unshift([this.x, this.y]);
if (this.targetRadius < 8) {
this.targetRadius += 0.3;
} else {
this.targetRadius = 1;
}
this.speed *= this.acceleration;
const vx = Math.cos(this.angle) * this.speed;
const vy = Math.sin(this.angle) * this.speed;
this.distanceTraveled = this.main.calculateDistance(
this.sx, this.sy, this.x + vx, this.y + vy
);
if (this.distanceTraveled >= this.distanceToTarget) {
this.main.createParticles(this.tx, this.ty);
this.main.fireworks.splice(index, 1);
} else {
this.x += vx;
this.y += vy;
}
}
draw() {
this.main.ctx.beginPath();
this.main.ctx.moveTo(
this.coordinates[this.coordinates.length - 1][0],
this.coordinates[this.coordinates.length - 1][1]
);
this.main.ctx.lineTo(this.x, this.y);
this.main.ctx.strokeStyle = `hsl(${this.main.hue}, 100%, ${this.brightness}%)`;
this.main.ctx.stroke();
}
}
// Particle class
class Particle {
constructor(x, y, main) {
this.main = main;
this.x = x;
this.y = y;
this.coordinates = [];
this.coordinateCount = 5;
while (this.coordinateCount--) {
this.coordinates.push([this.x, this.y]);
}
this.angle = main.random(0, Math.PI * 2);
this.speed = main.random(1, 10);
this.friction = 0.95;
this.gravity = 1;
this.hue = main.random(main.hue - 20, main.hue + 20);
this.brightness = main.random(50, 80);
this.alpha = 1;
this.decay = main.random(0.015, 0.03);
}
update(index) {
this.coordinates.pop();
this.coordinates.unshift([this.x, this.y]);
this.speed *= this.friction;
this.x += Math.cos(this.angle) * this.speed;
this.y += Math.sin(this.angle) * this.speed + this.gravity;
this.alpha -= this.decay;
if (this.alpha <= this.decay) {
this.main.particles.splice(index, 1);
}
}
draw() {
this.main.ctx.beginPath();
this.main.ctx.moveTo(
this.coordinates[this.coordinates.length - 1][0],
this.coordinates[this.coordinates.length - 1][1]
);
this.main.ctx.lineTo(this.x, this.y);
this.main.ctx.strokeStyle = `hsla(${this.hue}, 100%, ${this.brightness}%, ${this.alpha})`;
this.main.ctx.stroke();
}
}
// Khởi chạy khi trang load xong
window.addEventListener('load', () => hieuUngPhaoHoa.init());
})();