亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 svg.js 清除并重新繪制

使用 svg.js 清除并重新繪制

慕虎7371278 2023-10-30 20:37:31
我想使用 svg.js 繪制一些元素,然后清除畫布并繪制新元素。我正在使用draw.clear(),但是當我重新繪制元素時,它們不可見。這種方法正確還是我錯過了什么?我也嘗試過刪除()。var width = 500;var height = 500;var pos_x = 0;var pos_y = 0;var texto = [];var grupo = [];var rect = [];var clip = [];var random_rotation = [];var latino = 'ABCDEFGHIJKLMNOPQRSTUVXYZ'.split('');var cirilico = 'АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЬЮЯ'.split('');var hebreo = '???????????   ?????????????   '.split('');var griego = 'ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨ'.split('');var arabe = '????????????????????????????????'.split('');var coreano = '???????????????????????????????????????????????????'.split('');var glagolitico = '???????????????????????????????????????????????'.split('');var hiragana = 'あかさたなはまやらわがざだばぱいきしちにひみり(ゐ)ぎじぢびぴうくすつぬふむゆるぐずづぶぷえけせてねへめれ(ゑ)げぜでべぺおこそとのほもよろをごぞどぼぽ'.split('');var katakana = 'アカサタナハマヤラワガザダバパヴァイキシチニヒミリ(ヰ)ギジヂビピヴィウクスツヌフムユルグズヅブプヴエケセテネヘメレ(ヱ)ゲゼデベペヴェオコソトノホモヨロヲゴゾドボポヴォ'.split('');var sistemas = [latino, cirilico, hebreo, griego, arabe, coreano, glagolitico, hiragana, katakana];var alfabeto = [];var letra = [];var draw = SVG().addTo('.container').size(width, height).attr({id: 'svg'}); function getRndInteger(min, max) {  return Math.floor(Math.random() * (max - min + 1)) + min;}function getRndFloat(min, max) {  return (Math.random() * (max - min)) + min;}這是我正在嘗試創建的程序的簡化版本。將來我想每當用戶單擊時清除并重新繪制。
查看完整描述

1 回答

?
月關寶盒

TA貢獻1772條經驗 獲得超5個贊

您的代碼中的問題不是clear()方法。您正在使用全局變量pos_x并且pos_y正在遞增它們。在您的第二張圖中,圖像位于可見區域之外。要解決您的問題,請在函數的開頭初始化這些變量grafema:


// ...

function grafema() {

    pos_x = 0;

    pos_y = 0;

    for (var i = 0; i <= 3; i++) {

        // ...

無限繪圖的執行示例:


https://jsbin.com/mehuholiwo/edit?js,output


查看完整回答
反對 回復 2023-10-30
  • 1 回答
  • 0 關注
  • 365 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號